60000
298
68
139
54
459
725
597
969
843
818
369
293
89
291
98
273
530
94
987
464
599
394
394
878
228
95
343
978
39
210
183
207
66
60
426
235
313
563
94
159
239
799
914
519
151
216
787
156
243
864
407
625
173
507
550
921
295
419
130
56
742
413
516
955
633
551
137
869
280
740
319
784
552
554
562
784
527
456
777
381
779
865
745
203
879
907
478
449
309
454
766
984
876
109
406
479
833
699
530
480
757
527
729
925
238
747
653
998
200
219
160
120
83
497
918
899
250
572
868
994
951
120
493
400
578
360
108
166
834
991
42
647
404
101
151
57
122
644
17
232
916
447
207
534
581
555
698
377
119
702
74
250
972
633
183
233
167
129
109
428
465
84
631
909
870
409
563
61
191
832
752
83
123
382
731
476
684
673
777
895
668
320
966
546
708
821
920
386
191
636
800
901
135
104
637
891
422
205
236
587
456
911
847
806
169
150
319
230
869
940
473
991
598
936
162
788
780
195
903
871
462
786
613
651
756
531
650
115
582
517
635
549
564
362
470
912
678
271
458
949
80
779
808
632
229
711
356
191
566
25
188
976
240
920
758
688
473
974
140
784
552
830
723
14
651
649
724
166
499
710
118
594
507
60
930
823
790
21
260
526
24
68
148
149
574
157
18
22
381
168
114
935
77
471
140
171
923
467
383
156
734
31
704
99
237
956
218
389
422
615
789
442
196
501
186
474
839
650
205
750
20
669
110
436
711
40
405
41
430
343
798
25
389
439
275
798
365
185
245
575
463
917
924
829
97
860
919
542
806
415
128
313
756
449
478
608
61
239
212
771
776
914
724
520
270
262
852
878
755
490
488
59
420
228
884
932
870
771
683
348
100
55
864
553
215
422
234
304
339
171
883
277
537
802
93
659
810
42
487
308
202
870
559
187
138
177
866
72
705
486
735
225
818
566
357
81
784
690
378
330
171
419
429
748
42
523
122
392
312
174
827
35
370
784
620
467
463
224
315
357
816
882
28
95
784
948
45
135
347
119
200
928
35
934
86
567
128
926
428
151
100
744
931
27
236
639
89
762
915
672
760
946
511
155
164
715
105
774
21
948
295
604
656
354
38
245
35
586
851
115
12
231
464
499
438
192
404
190
297
533
331
574
244
507
949
251
494
748
643
526
158
581
243
370
971
535
86
359
285
666
805
654
408
208
998
811
389
855
619
593
335
403
900
563
973
965
963
637
845
870
66
604
512
139
308
614
987
542
900
995
356
562
367
531
364
629
621
79
207
472
139
147
703
842
10
760
768
768
677
164
238
610
622
166
770
939
30
196
93
780
976
130
55
986
853
208
822
973
979
302
376
634
175
529
711
78
858
722
685
646
389
297
512
379
732
813
400
83
743
577
662
973
151
196
549
97
119
401
96
673
890
716
541
111
690
622
581
227
104
923
702
531
438
779
775
362
658
388
548
783
144
558
578
653
415
674
611
667
642
173
963
843
486
705
922
457
132
917
490
837
870
855
496
848
910
942
337
731
806
517
543
83
681
164
696
74
505
300
912
566
210
956
699
303
435
243
988
588
76
718
405
619
937
940
447
785
667
144
971
615
227
404
480
398
564
292
572
978
374
486
128
130
641
789
143
654
898
506
724
133
550
558
817
566
663
894
92
163
14
793
823
906
134
825
913
728
613
462
181
957
811
797
551
909
881
908
131
252
605
778
380
96
547
934
427
630
749
936
56
32
57
577
194
695
532
299
265
704
184
770
439
569
756
723
79
516
849
718
62
154
693
853
893
86
94
550
821
399
904
518
222
865
274
367
44
846
132
550
876
232
900
104
355
450
756
156
592
190
249
352
902
565
540
392
373
861
278
928
667
410
791
563
901
873
767
520
365
331
605
978
661
791
647
832
336
560
340
63
158
253
60
202
232
561
957
472
778
145
101
557
933
335
979
83
763
980
546
562
193
960
706
657
547
318
772
294
393
867
795
578
978
285
723
105
102
611
699
956
600
593
454
149
395
71
302
634
957
836
706
561
76
484
991
411
383
346
982
848
405
50
720
325
285
206
703
430
575
614
563
720
576
16
968
753
735
54
790
622
794
670
446
921
899
518
769
810
753
403
221
710
204
761
987
703
414
833
906
770
907
592
952
194
674
869
518
249
369
400
246
368
241
780
797
413
898
434
287
331
362
71
125
251
297
747
906
622
877
456
365
993
437
54
771
51
333
830
306
367
876
223
959
320
879
222
351
152
350
621
876
448
88
549
173
417
177
186
892
12
971
324
451
312
231
673
476
562
446
687
798
126
310
530
525
496
287
78
728
40
982
646
400
292
905
688
241
489
635
382
773
829
118
989
119
66
918
128
176
919
537
850
230
133
853
825
87
584
502
629
544
328
570
601
953
948
138
386
68
823
349
41
554
466
648
204
996
721
222
852
943
27
435
813
151
726
83
869
863
396
209
17
122
598
659
388
799
395
290
957
178
36
362
842
777
942
486
270
328
971
878
355
716
697
833
934
266
398
309
41
518
175
47
173
526
481
962
853
864
345
587
304
445
833
851
917
60
340
153
806
326
595
307
131
813
167
910
300
973
492
699
396
402
184
741
409
684
755
296
703
433
784
435
477
854
165
615
475
985
337
824
310
85
24
893
616
446
517
566
626
732
213
116
384
493
320
173
466
892
996
234
552
838
710
531
797
399
757
952
384
557
538
626
975
289
541
892
75
95
215
840
796
722
695
218
43
188
344
393
857
596
76
224
546
762
891
866
383
427
152
36
537
246
175
562
145
37
980
641
582
964
96
854
923
855
169
811
688
466
357
159
729
75
296
942
71
697
798
104
963
783
22
704
605
633
464
254
522
255
813
92
742
436
708
220
424
320
170
868
312
185
718
835
763
385
187
222
945
286
10
39
465
864
427
723
885
644
854
700
927
222
317
598
724
476
256
350
752
650
761
666
139
131
641
176
510
715
795
44
807
129
979
22
481
385
408
491
80
277
382
603
575
426
984
202
648
531
665
348
986
893
323
406
888
148
242
128
138
559
769
966
210
673
491
246
692
242
529
584
830
463
440
577
895
605
592
772
185
76
224
954
846
287
699
307
497
409
396
193
302
489
464
313
799
759
767
199
101
39
321
77
227
732
272
508
868
319
159
119
515
986
327
368
237
922
102
757
298
180
975
801
484
646
36
474
746
574
612
635
526
670
752
508
288
525
217
314
254
983
794
653
986
355
801
294
690
608
120
984
595
654
240
272
89
992
947
523
176
72
378
238
34
787
77
535
720
640
71
704
51
488
896
58
581
486
10
419
817
523
12
645
701
756
953
419
326
210
931
967
143
826
290
995
429
857
553
221
831
992
645
495
335
785
875
783
809
846
482
48
952
801
92
645
479
505
870
202
903
743
25
788
774
286
962
423
655
368
84
751
224
733
574
174
278
259
829
340
227
477
92
250
607
153
290
673
75
763
427
11
185
431
904
414
45
613
737
507
489
563
135
28
669
225
99
802
910
966
105
179
957
354
718
479
352
778
921
189
948
136
479
371
538
186
460
400
245
822
943
358
25
266
849
962
280
871
742
260
933
631
561
267
581
196
486
552
308
721
471
847
867
65
656
92
89
537
281
514
916
637
670
622
858
95
65
923
118
588
911
608
131
703
865
382
441
506
991
692
142
185
818
742
470
229
450
211
497
30
689
60
194
367
246
923
823
674
540
337
357
491
641
386
739
951
11
679
119
863
28
686
953
903
739
21
332
441
707
189
348
978
378
278
780
838
160
769
263
98
700
429
248
218
69
845
565
397
444
319
753
383
78
542
520
131
756
537
216
645
81
34
149
893
454
489
360
251
110
632
771
386
414
18
168
31
177
394
498
481
108
755
631
651
308
765
289
750
74
857
809
518
528
449
197
31
776
88
791
182
334
159
300
898
826
595
737
307
508
257
831
267
70
681
461
150
341
103
678
91
912
324
790
662
737
541
208
565
339
390
616
989
188
818
254
388
831
717
282
340
459
74
345
474
453
565
825
48
51
964
109
447
526
726
579
228
591
272
140
435
427
449
417
215
674
147
657
948
212
706
653
938
426
986
597
649
505
96
281
59
192
924
644
273
281
486
400
345
691
940
795
540
638
321
652
273
149
814
634
221
114
289
836
225
308
958
86
699
942
563
229
804
830
43
888
199
266
729
492
555
866
765
480
84
804
801
397
778
384
146
442
961
106
811
93
121
650
880
194
952
955
413
961
899
189
331
965
278
357
764
19
826
685
430
435
626
227
112
326
430
355
958
588
838
945
110
365
512
295
378
990
637
430
355
70
87
386
729
119
440
452
973
306
525
851
343
37
191
185
688
683
175
773
118
935
290
932
486
434
448
203
312
345
455
826
676
680
505
899
745
176
246
778
733
100
977
469
838
942
491
64
133
278
32
284
984
875
446
593
874
897
341
662
429
210
569
986
818
164
201
28
295
658
468
652
407
439
621
407
53
743
246
244
284
468
932
606
700
90
606
14
902
296
802
620
656
866
537
598
19
121
296
992
310
141
97
323
98
636
840
521
675
411
899
949
704
567
991
390
865
846
347
841
648
930
175
895
156
742
783
118
615
950
372
966
598
573
873
398
440
342
303
730
948
177
708
980
623
736
632
726
826
111
800
267
532
866
630
340
762
107
391
228
764
329
228
224
41
615
860
534
591
194
431
682
149
662
610
192
190
105
293
772
979
541
480
375
113
65
633
900
404
333
913
588
596
313
992
486
745
59
669
276
466
413
921
689
580
192
807
393
614
399
756
95
762
355
450
800
612
741
744
217
302
143
295
556
773
627
149
199
507
190
284
279
716
691
657
950
266
609
451
349
989
767
411
830
601
361
899
394
824
732
529
796
742
147
209
607
569
926
320
946
18
836
186
115
819
775
718
856
910
787
54
272
805
635
296
350
102
864
316
288
784
105
389
833
471
644
530
88
684
971
985
876
871
621
733
987
533
34
352
190
669
517
925
723
322
862
573
131
996
282
985
665
868
386
177
946
910
389
896
504
270
659
282
620
618
325
340
356
56
53
937
844
872
864
553
655
512
689
948
504
332
552
186
50
882
694
661
92
674
370
926
405
33
356
154
475
322
59
600
75
588
413
268
253
745
921
948
478
72
368
436
166
949
849
671
288
988
852
647
822
980
119
497
371
592
148
992
862
161
899
984
473
304
179
122
681
448
866
760
552
545
106
56
153
317
895
126
814
629
147
440
263
892
379
879
366
691
402
196
256
272
77
320
748
343
350
102
264
433
560
650
210
123
266
801
725
922
504
715
934
982
681
140
666
654
773
102
303
545
368
12
488
24
765
533
620
253
361
485
43
856
171
51
554
863
71
771
34
150
152
51
365
225
321
268
706
813
306
246
119
373
892
82
804
504
619
710
710
492
431
243
756
137
546
738
813
470
827
713
833
24
474
124
676
503
23
557
320
255
193
465
881
276
526
692
501
350
959
803
723
938
848
447
900
681
610
27
378
522
164
365
499
809
614
149
201
465
176
754
458
527
662
586
163
811
211
782
157
678
889
541
311
643
691
566
892
899
261
88
91
400
543
934
506
150
368
624
727
404
506
273
958
719
251
430
902
227
77
635
929
383
570
893
446
318
857
10
414
647
322
898
290
449
308
95
188
938
366
135
126
428
371
240
419
569
581
84
669
326
684
917
474
385
74
262
727
481
535
723
69
332
857
60
997
249
459
596
893
467
127
338
716
143
804
293
820
752
954
857
699
713
288
361
111
945
749
330
558
588
471
189
881
832
727
796
420
242
606
468
278
879
817
777
759
292
248
49
103
627
287
369
61
521
704
35
792
692
588
190
871
18
777
631
316
602
340
403
737
451
671
777
108
986
230
535
218
635
102
116
270
900
771
74
265
164
893
422
482
315
137
769
338
74
248
526
380
850
959
530
166
664
993
197
602
263
524
784
793
316
565
16
172
103
485
677
503
232
324
957
808
887
979
639
298
622
243
532
251
668
458
422
277
797
180
432
890
489
719
456
623
611
868
262
228
759
613
383
830
954
97
200
705
182
454
629
873
204
526
294
125
624
455
157
438
886
281
668
74
266
847
453
780
591
794
701
940
214
664
116
361
308
901
187
698
327
67
926
624
637
143
266
214
797
765
798
803
31
442
219
503
543
27
398
399
658
152
181
81
85
158
594
243
87
220
290
784
617
960
900
347
140
28
692
303
292
936
657
449
641
781
358
161
71
784
42
257
294
609
92
438
94
594
405
128
656
46
522
718
795
464
201
338
481
374
354
805
398
405
754
536
468
899
252
519
770
785
510
36
449
999
319
232
722
886
275
834
641
301
650
400
284
306
128
634
46
23
867
386
179
841
287
89
148
590
421
162
860
402
762
410
912
88
355
428
155
25
967
337
173
960
172
153
184
646
320
458
835
606
727
859
75
209
35
663
497
104
798
961
97
856
814
422
444
182
481
235
205
403
17
545
456
811
817
867
431
320
850
823
927
473
211
197
481
887
117
302
285
24
408
941
594
727
520
632
936
646
738
894
730
500
209
586
933
479
89
256
800
126
897
115
887
762
639
128
661
257
956
540
387
980
267
177
661
857
603
859
972
109
588
114
778
808
324
748
700
493
73
45
733
414
549
299
985
72
192
210
256
323
403
813
930
516
791
697
286
837
735
542
885
245
572
362
971
428
180
402
374
764
26
617
536
281
747
313
243
99
640
776
706
929
69
536
815
761
197
550
495
357
468
777
241
638
246
451
772
813
847
504
278
476
722
531
860
923
20
490
308
490
430
695
657
358
584
286
453
288
980
440
943
855
710
267
34
822
220
578
981
140
342
737
973
791
445
552
515
932
460
743
884
826
661
942
685
543
874
429
343
665
441
636
369
756
525
479
937
509
192
412
739
880
401
209
817
48
176
336
510
841
802
407
683
505
49
324
642
962
537
764
427
429
829
95
325
242
422
887
333
329
964
922
433
317
874
642
499
478
727
973
728
919
574
438
960
796
36
511
923
639
339
26
337
296
20
984
21
89
685
27
250
610
710
326
72
176
829
13
846
553
455
581
809
404
499
169
214
962
59
488
185
453
551
710
98
177
693
541
100
495
315
487
917
699
206
366
841
121
472
851
433
670
306
670
287
300
824
222
364
485
930
585
353
522
852
328
276
373
76
283
607
643
768
34
674
106
922
673
623
924
822
38
796
211
597
879
574
501
129
909
758
936
163
470
467
729
773
119
797
858
617
574
430
413
726
144
571
398
494
382
529
677
879
213
803
860
225
477
866
306
628
22
101
450
360
392
932
702
209
725
684
506
912
320
786
527
468
756
254
626
19
648
97
513
556
746
607
502
501
338
292
357
545
948
493
758
771
57
873
617
530
274
738
707
131
817
461
98
887
437
307
403
88
68
418
271
914
742
224
380
812
669
506
647
663
539
501
251
494
451
370
287
31
857
464
477
444
394
353
69
768
182
599
836
481
946
645
616
690
923
89
310
911
601
746
196
615
57
668
515
314
248
461
924
583
180
440
50
351
45
546
192
472
839
846
443
127
576
393
316
785
51
525
302
363
775
896
642
120
344
284
115
803
845
296
460
749
300
912
105
61
754
776
802
764
52
186
728
712
239
691
284
560
862
291
235
242
32
455
103
799
46
301
131
90
514
382
305
447
712
64
703
926
890
827
277
497
817
484
624
533
740
817
382
42
375
735
140
320
428
759
31
151
440
57
587
754
865
110
879
800
647
237
621
807
559
836
32
990
970
859
918
981
961
87
696
411
917
475
117
860
781
965
717
780
378
746
683
454
129
751
655
627
585
723
170
484
417
681
262
772
513
889
634
132
127
625
769
224
200
258
320
308
59
920
694
517
924
283
502
817
175
215
602
758
814
992
279
459
80
781
85
540
570
786
203
175
966
886
90
318
373
961
427
877
857
71
403
405
745
197
998
872
75
349
647
958
881
231
308
201
581
255
679
99
44
995
871
170
803
966
186
54
644
428
33
214
254
506
425
888
85
668
54
107
634
88
631
189
785
163
194
755
907
178
374
816
964
277
476
473
739
98
882
13
504
725
402
444
771
229
888
627
759
263
357
106
117
398
256
402
899
951
573
970
998
75
660
98
817
895
902
763
539
128
879
326
824
410
491
829
35
255
449
232
20
154
526
794
473
417
836
595
475
832
578
528
622
908
311
291
396
491
312
507
986
730
477
318
673
383
766
176
378
432
118
171
156
279
97
568
662
656
140
765
255
431
431
709
471
65
651
253
743
595
852
323
64
530
521
125
860
20
54
986
631
44
164
34
438
385
422
633
517
109
250
29
252
332
216
983
851
18
560
651
673
106
351
807
978
228
266
254
262
938
980
638
405
892
573
983
900
636
737
35
817
527
840
102
927
823
971
394
248
71
882
849
559
980
21
769
366
799
474
884
389
155
247
82
252
378
304
228
961
111
11
613
258
816
439
278
673
676
399
635
420
263
175
968
655
405
664
574
975
31
102
924
981
320
190
322
112
344
617
477
496
570
344
793
365
654
478
87
867
408
819
749
482
132
243
256
807
597
603
293
912
151
229
515
906
461
11
830
679
228
67
340
199
265
475
413
392
398
457
999
461
187
649
820
633
261
33
880
686
237
323
381
531
593
221
903
653
745
49
343
725
907
589
985
116
239
874
421
303
815
450
493
46
981
407
924
204
878
254
689
856
638
322
453
787
726
815
548
306
217
729
840
998
354
770
781
222
574
653
701
278
169
222
344
243
708
331
653
406
664
907
908
283
403
691
527
300
874
98
281
706
606
615
774
884
468
277
837
358
427
476
647
817
504
379
617
163
513
397
701
764
696
420
895
989
739
536
607
501
753
426
260
618
87
207
583
715
723
462
976
136
233
306
14
199
744
177
285
879
618
447
204
126
212
269
191
993
48
642
598
586
490
496
430
610
407
240
983
553
316
93
216
709
54
476
457
257
213
325
630
953
211
120
169
983
403
86
336
728
850
389
778
217
610
892
433
154
348
118
22
597
255
579
38
317
517
367
973
888
858
301
150
931
972
39
868
148
694
690
539
516
13
844
669
923
214
128
478
898
547
685
642
784
56
204
10
710
462
44
297
140
255
995
259
573
512
349
284
607
761
891
825
339
477
897
610
609
455
469
933
817
843
279
265
286
980
173
281
867
603
695
924
456
266
630
955
930
354
330
48
677
533
748
348
817
305
687
834
990
149
116
63
861
803
681
583
458
132
109
937
755
355
869
128
882
423
210
604
16
482
908
65
571
867
245
271
811
666
728
757
531
126
259
163
621
951
324
543
62
778
914
87
67
404
385
396
57
34
435
606
911
140
50
880
162
479
269
943
550
103
514
462
773
306
485
406
975
370
486
838
728
89
515
870
274
987
524
319
582
885
574
249
783
219
668
475
20
875
938
685
239
49
432
315
456
153
519
990
420
839
395
431
642
437
136
306
315
156
991
63
211
909
319
471
974
853
236
111
716
815
640
281
290
208
212
392
604
287
994
869
790
730
949
261
374
36
965
816
514
673
71
260
266
524
963
691
66
271
770
689
664
292
682
511
259
875
162
632
375
225
555
558
846
423
489
815
551
74
999
129
577
427
282
662
24
668
26
655
124
439
379
767
523
625
823
596
747
725
156
672
105
361
49
279
426
427
481
341
174
858
999
442
37
244
587
222
972
851
212
609
303
995
664
519
744
218
861
753
536
116
900
667
992
845
550
689
780
978
456
910
133
716
450
177
251
171
89
811
821
653
939
384
466
415
636
976
856
255
686
677
733
339
835
228
690
682
278
322
310
113
89
73
688
220
935
134
230
473
527
306
199
355
960
993
389
520
78
121
441
790
582
674
101
779
203
689
708
524
646
604
449
84
794
820
580
380
34
670
550
70
58
617
501
341
46
94
184
686
77
58
415
545
55
163
26
295
470
425
853
83
413
337
941
341
304
679
884
818
303
157
754
381
496
232
193
945
477
979
602
255
255
372
314
123
165
486
713
464
116
943
369
621
168
404
33
752
873
694
415
91
794
822
119
182
482
473
171
808
530
199
622
307
188
772
620
731
472
274
132
340
182
28
798
472
436
241
318
764
880
135
432
953
123
332
497
742
832
23
707
577
568
971
243
254
877
297
394
384
497
783
22
812
395
68
611
841
300
13
955
69
252
747
815
277
389
266
654
131
349
835
100
229
986
421
514
947
688
771
76
675
201
174
509
512
549
472
267
129
918
320
101
20
913
861
844
67
544
228
942
491
532
756
307
974
14
187
813
326
381
607
809
905
575
568
577
784
69
250
365
91
61
163
148
580
494
592
391
856
269
837
570
989
18
334
606
618
865
975
731
868
240
471
485
882
408
315
596
735
650
720
789
404
356
698
23
95
981
282
600
635
425
245
466
339
781
331
676
798
525
67
227
846
757
780
704
458
442
636
129
14
563
529
156
125
162
808
443
609
826
254
340
506
459
528
89
889
63
307
883
370
790
59
644
923
570
205
724
359
228
791
367
618
228
151
707
629
140
145
411
998
934
212
650
481
532
85
481
529
422
981
999
462
514
702
363
484
227
991
878
668
392
318
21
484
422
262
188
92
95
853
877
155
363
515
218
480
959
611
845
127
738
212
791
836
256
337
999
898
572
914
638
202
798
885
145
516
891
868
716
421
671
873
508
906
874
288
341
982
287
116
681
613
248
735
373
247
621
284
238
973
987
689
277
217
301
205
96
767
298
885
34
824
541
400
795
556
986
646
384
841
688
107
760
594
893
159
792
700
254
190
706
535
541
403
319
227
673
184
128
648
619
647
72
953
933
817
670
950
534
746
480
632
479
916
746
129
236
664
836
540
143
181
280
817
346
23
585
89
750
486
776
993
772
144
666
659
244
480
788
918
233
134
578
993
934
379
709
246
437
461
638
425
341
40
907
367
59
574
536
13
37
626
758
183
584
300
453
287
467
526
272
43
113
485
592
498
554
885
901
604
405
238
322
438
742
23
524
147
962
499
192
326
166
653
373
497
206
324
91
628
567
476
831
525
46
416
538
695
156
953
119
793
887
183
172
59
706
726
583
675
584
42
298
636
518
65
458
615
788
352
733
857
697
813
409
459
530
811
766
513
684
306
47
264
603
306
761
255
281
610
368
840
217
858
142
546
225
712
879
840
955
538
943
723
768
864
415
479
118
94
151
856
190
996
339
804
383
420
240
187
713
128
556
202
205
710
674
506
763
983
821
722
484
688
751
635
463
228
511
248
994
846
631
378
622
817
714
483
961
165
583
677
527
71
478
909
375
252
559
271
151
613
13
445
403
425
704
369
766
421
593
172
314
611
177
921
55
893
272
184
909
782
456
451
866
281
947
217
364
57
434
555
81
132
330
258
651
738
611
892
604
241
128
547
120
543
930
566
960
499
253
152
49
96
906
563
950
481
469
762
625
283
206
471
795
385
830
62
564
982
565
467
887
320
374
422
218
14
722
46
81
679
244
910
808
916
281
706
36
184
781
16
138
902
398
70
290
437
535
482
749
794
159
305
858
908
229
296
464
611
41
406
816
875
543
270
372
222
357
124
895
766
421
404
370
943
961
777
204
297
633
176
169
178
212
738
98
692
368
634
770
159
459
289
646
974
779
217
101
38
191
38
187
704
38
474
480
38
498
564
877
985
760
562
166
544
216
520
177
945
361
994
733
92
626
295
211
58
594
721
909
793
649
622
683
775
936
638
473
687
64
465
397
165
517
84
448
911
210
513
550
444
240
127
891
783
263
806
912
991
616
755
45
172
575
732
573
260
181
415
407
462
570
416
860
322
801
915
501
748
809
711
834
165
480
514
759
493
219
361
29
427
318
690
701
110
101
432
155
393
434
892
599
129
179
728
835
524
719
827
170
299
542
357
581
111
894
131
921
162
933
606
615
230
351
612
86
875
926
113
704
699
641
10
758
56
910
337
903
859
891
334
198
215
740
553
133
449
274
418
114
708
657
520
308
368
817
902
348
629
619
511
879
884
406
15
853
456
955
184
610
42
977
353
410
392
602
859
90
22
290
11
643
625
119
290
321
182
439
718
203
948
483
28
479
197
342
711
747
782
641
193
798
292
408
700
318
857
936
376
367
327
661
352
11
808
237
184
491
748
901
892
235
771
573
303
99
888
148
524
912
648
379
266
41
151
477
19
100
312
491
71
661
571
189
722
511
34
695
95
814
173
47
498
565
912
423
660
884
697
922
106
703
342
972
633
340
270
817
212
33
407
171
517
11
721
536
647
485
447
428
533
549
163
197
564
799
846
695
485
286
302
869
35
113
365
134
223
687
816
879
437
792
819
49
954
202
628
507
112
96
798
538
837
920
363
870
758
960
224
539
857
564
61
477
892
198
809
471
46
48
894
167
188
725
719
927
272
159
452
108
506
447
477
309
219
710
427
724
424
738
870
11
381
305
113
933
795
982
726
965
962
742
313
789
680
834
862
177
39
914
296
349
492
166
479
747
251
832
665
296
708
728
79
197
542
667
232
807
464
12
776
833
208
942
293
29
741
526
445
222
662
459
91
872
91
819
557
822
261
612
94
12
52
907
30
965
974
42
698
973
389
199
506
724
648
845
785
488
971
304
141
304
285
465
727
138
32
751
518
405
825
874
618
519
929
26
70
746
474
620
116
740
332
268
373
533
963
731
124
799
923
216
606
538
917
972
986
286
17
837
948
482
609
358
471
28
198
673
492
228
580
698
61
566
865
538
972
552
503
12
579
248
14
105
112
584
520
698
966
253
252
736
30
636
935
680
545
325
207
578
375
381
684
805
716
159
242
846
75
513
592
207
509
202
833
56
554
376
895
812
168
616
230
549
721
65
876
332
810
657
36
326
797
727
238
373
711
804
30
192
925
886
308
516
106
758
443
623
597
778
589
535
827
946
74
461
399
647
655
870
824
895
572
545
453
299
344
745
198
225
283
901
962
78
540
842
65
591
587
382
820
610
293
260
626
685
343
849
863
976
490
242
355
681
240
521
266
910
214
156
586
547
396
684
365
51
583
131
854
619
549
303
530
495
379
474
92
470
928
638
942
136
180
807
972
894
25
841
649
660
30
918
466
805
486
746
544
736
995
19
648
188
237
880
290
300
871
294
310
118
840
815
513
256
234
318
612
900
784
714
921
596
660
857
54
632
572
865
201
760
658
178
237
901
864
300
793
506
548
430
965
492
445
15
340
722
29
909
453
369
218
734
396
481
596
479
135
246
341
565
568
40
266
404
369
490
217
729
308
88
346
505
359
850
799
385
182
603
580
420
591
714
321
125
237
871
915
934
374
773
349
476
503
996
384
695
865
629
289
598
232
300
782
893
196
567
923
934
172
964
712
913
576
817
748
383
536
908
30
963
782
38
810
450
427
746
630
321
384
537
491
528
792
264
39
196
457
709
50
782
732
149
647
994
88
953
306
686
461
772
494
895
38
614
937
680
565
983
528
754
726
394
934
934
249
63
351
245
506
427
267
467
331
915
730
799
903
449
93
827
241
831
502
610
640
820
261
946
690
788
136
800
580
770
499
186
987
581
279
194
587
686
485
790
987
148
217
348
949
540
535
844
24
141
146
244
279
666
140
971
513
189
919
57
77
836
87
231
127
652
718
642
561
220
86
478
867
864
957
284
496
629
245
701
67
684
866
780
423
530
19
198
356
663
248
407
949
321
65
296
876
831
815
394
729
563
711
63
792
892
752
48
89
600
335
664
381
40
939
561
536
401
620
647
758
798
320
514
528
798
878
542
152
954
924
305
271
986
677
877
93
193
15
635
485
24
616
49
655
274
732
341
234
737
589
657
609
278
763
848
414
181
45
553
599
185
567
532
914
767
976
279
835
404
228
725
795
522
940
788
766
634
434
122
508
568
19
569
565
980
609
100
866
65
390
488
644
635
436
522
707
957
840
401
202
855
732
43
260
929
680
695
135
207
312
531
211
113
754
685
128
440
103
378
344
97
938
292
741
639
434
897
123
112
426
163
112
721
44
250
489
404
243
158
789
841
717
165
265
126
195
827
650
364
715
812
632
710
370
755
389
235
698
577
88
713
774
863
652
826
21
845
518
582
344
309
221
33
390
203
899
311
359
586
223
102
780
327
582
952
275
801
418
103
284
834
375
997
12
676
149
411
677
459
659
631
312
131
240
888
367
96
529
726
21
954
572
172
822
83
583
725
224
581
813
484
526
566
65
783
420
829
988
406
688
932
198
736
661
48
342
349
696
228
409
280
869
673
602
126
181
260
154
898
664
519
232
504
46
569
445
343
305
161
516
509
710
356
784
601
941
355
603
604
369
712
672
334
151
321
167
814
85
865
432
57
302
386
288
398
68
719
494
895
761
838
891
916
732
674
594
772
264
60
452
437
501
25
177
795
199
860
324
774
878
563
534
598
947
288
626
865
167
336
797
153
366
998
656
519
419
923
172
719
930
461
351
713
395
181
888
452
850
812
67
20
777
192
785
430
256
656
380
525
513
232
959
444
464
437
672
70
563
437
182
953
155
940
527
943
225
340
578
754
961
858
618
105
620
347
950
204
279
409
658
932
299
585
993
75
642
269
703
323
877
662
337
812
110
702
50
336
793
124
385
95
358
957
472
695
466
290
58
601
41
154
869
330
424
872
982
26
560
659
209
342
260
478
473
709
334
726
643
593
472
598
816
807
616
256
785
166
976
395
920
489
67
810
902
312
23
317
156
247
376
880
652
588
321
70
10
396
570
785
186
318
593
494
54
353
185
193
853
17
396
535
463
136
435
821
780
422
720
417
98
720
973
22
560
622
931
754
564
578
359
221
213
183
174
738
277
503
167
806
229
192
305
134
301
760
430
714
685
266
423
865
297
680
73
970
123
504
613
695
282
498
479
191
319
550
707
315
355
501
512
381
716
123
178
811
725
774
447
772
773
801
229
553
778
557
694
361
345
868
505
597
553
431
786
82
666
135
134
359
624
315
40
438
595
767
60
779
96
280
315
578
437
785
138
211
32
940
305
321
308
593
190
800
66
631
322
254
740
982
296
530
114
823
225
820
125
803
185
634
146
610
471
774
671
151
777
646
912
529
468
653
456
617
492
710
248
962
925
49
442
954
507
682
859
103
122
576
242
864
536
230
392
476
689
43
375
820
655
551
409
55
55
77
757
746
468
186
663
740
74
829
215
697
440
530
579
23
268
573
31
743
811
250
483
83
283
343
315
378
837
746
460
994
161
792
365
399
321
924
430
32
243
22
511
693
748
739
263
988
966
295
342
242
459
877
717
339
602
456
388
217
157
178
504
652
891
799
188
163
547
649
619
891
604
813
930
157
434
187
375
776
29
609
590
683
920
918
331
603
643
292
150
233
157
802
196
347
301
835
431
661
490
682
661
651
686
96
460
181
745
284
17
486
208
600
756
62
815
342
489
121
349
115
801
391
193
38
385
418
829
630
77
142
591
883
786
650
685
607
428
227
872
380
734
601
635
96
238
44
111
502
409
561
836
95
245
991
986
654
972
821
325
555
141
271
115
712
591
700
639
162
473
228
410
564
657
887
949
620
187
627
192
784
987
301
931
391
54
922
785
759
571
904
742
146
720
802
193
400
576
833
839
65
863
255
380
961
479
507
936
40
398
158
238
994
230
160
213
368
496
501
240
790
498
11
38
472
746
86
963
647
496
483
914
195
30
191
297
730
286
609
82
485
542
365
316
309
110
470
88
715
231
958
515
753
954
570
799
668
304
134
440
301
648
260
533
858
576
48
751
465
242
102
449
348
175
605
512
435
400
185
156
126
88
838
995
828
809
335
357
343
739
392
862
932
988
561
443
685
926
868
744
787
106
738
436
374
167
621
114
944
361
770
378
650
135
951
824
455
948
832
881
783
932
671
371
981
208
902
584
421
455
974
781
799
505
542
502
546
53
979
20
494
214
228
641
838
587
473
169
355
873
491
76
742
569
927
197
125
947
339
411
225
850
701
558
389
553
419
132
659
674
166
287
783
833
112
100
332
717
898
576
301
342
77
289
283
142
344
565
856
915
211
929
631
403
52
416
226
576
625
453
538
877
640
91
218
226
419
999
235
903
426
460
938
580
870
426
222
214
124
757
930
527
453
514
727
849
334
935
948
225
695
129
858
55
877
143
292
721
42
473
899
169
832
23
660
416
545
724
630
924
18
557
518
852
989
231
323
890
477
795
52
628
521
929
428
417
954
253
75
413
397
552
245
702
454
131
138
441
619
525
465
353
701
663
610
739
378
994
305
91
187
824
483
467
713
661
90
962
694
702
474
257
620
544
158
25
367
666
27
513
372
827
734
726
490
349
925
69
613
909
401
532
537
811
704
514
384
314
288
811
675
796
577
768
16
162
216
567
806
167
287
229
608
513
777
547
941
90
328
433
747
614
118
589
424
666
381
820
124
344
348
403
927
890
325
816
384
475
540
662
374
216
260
346
810
356
217
484
226
644
283
978
59
722
564
842
825
742
473
946
429
713
955
968
125
573
870
24
474
769
421
904
125
577
53
43
715
667
81
368
848
164
113
688
60
360
110
760
756
496
763
255
525
380
412
334
338
403
164
36
698
904
135
591
297
861
172
95
934
226
555
274
141
259
335
87
559
842
430
13
660
129
678
358
535
835
993
227
369
705
766
837
771
221
619
851
11
66
659
162
89
470
76
936
71
488
423
900
275
38
32
391
312
32
532
640
609
923
696
726
456
159
928
929
539
521
210
39
358
943
358
118
647
292
780
839
484
331
940
785
158
453
113
806
58
204
323
960
885
188
700
809
520
644
155
487
389
954
664
85
751
34
98
170
246
236
783
349
165
446
720
629
112
194
425
742
847
564
737
353
167
740
303
192
487
41
908
904
387
513
21
425
125
403
714
288
903
965
297
191
983
288
649
513
663
618
282
963
841
944
982
439
883
593
814
795
433
576
40
995
423
835
636
205
428
646
855
364
56
638
114
513
556
852
723
595
457
493
784
921
532
210
20
494
438
777
887
470
11
807
407
813
208
858
772
653
709
721
497
788
142
754
504
587
167
672
38
162
281
115
431
777
271
443
389
523
371
142
82
72
983
720
634
901
321
327
812
367
864
211
473
13
658
459
318
353
594
481
54
31
785
36
984
387
448
762
531
405
743
161
517
534
42
290
140
189
21
99
881
169
684
113
362
986
489
121
38
277
146
104
528
639
749
269
690
65
850
72
28
747
18
156
392
920
944
763
195
10
140
409
906
436
246
870
848
372
332
405
100
160
272
153
768
518
982
69
120
539
931
605
30
626
489
308
305
834
789
20
642
198
908
601
426
66
218
351
957
535
794
693
257
592
67
586
407
130
330
303
482
238
762
143
896
700
614
610
883
322
875
365
224
962
46
973
250
547
873
229
584
839
984
767
537
463
957
22
81
965
959
650
536
961
918
594
261
748
167
157
850
307
22
987
957
699
650
526
502
162
762
115
192
473
936
289
309
394
892
438
957
968
295
965
902
97
50
234
770
562
189
281
739
540
448
851
239
763
24
156
775
646
808
531
124
19
893
387
911
142
60
825
886
536
884
952
353
891
174
359
672
152
848
389
557
975
821
151
336
257
144
721
566
232
282
320
919
397
718
823
908
62
573
889
61
849
435
897
577
133
275
363
200
126
641
478
694
632
477
312
221
502
213
391
528
530
669
724
794
313
115
554
821
532
130
392
575
552
740
910
936
614
314
857
54
37
702
292
737
633
734
164
298
722
238
938
388
749
433
371
813
376
613
673
549
279
329
784
870
939
698
886
292
473
79
166
143
266
452
446
965
36
529
453
68
881
174
216
235
877
749
479
276
303
485
927
239
204
779
428
783
643
650
636
485
434
119
208
381
175
83
33
398
397
840
439
230
285
192
394
520
488
28
427
758
344
779
966
803
444
69
582
863
83
229
703
864
560
858
693
676
257
690
772
106
248
436
360
573
868
29
812
650
352
918
215
958
234
905
777
229
955
530
30
755
995
250
106
501
126
199
314
918
420
64
942
640
281
788
37
728
715
171
991
433
631
814
901
586
307
944
703
257
803
336
913
280
339
266
611
275
115
442
613
283
473
91
848
413
128
909
649
204
678
978
643
832
603
15
787
960
219
470
862
78
397
547
861
935
566
581
732
776
913
687
97
33
513
836
88
554
853
795
193
184
432
265
820
467
235
175
66
290
264
382
951
81
620
778
524
805
835
258
19
560
427
342
472
439
622
385
174
234
423
381
603
374
695
723
333
586
368
463
416
805
473
543
142
65
756
306
158
332
92
333
830
351
895
996
812
616
259
638
969
309
488
926
927
215
350
566
939
249
977
708
253
245
303
915
698
97
704
259
718
817
856
250
841
672
73
36
569
990
279
965
141
479
123
400
818
162
733
367
368
893
586
512
411
204
260
223
993
788
993
429
680
886
656
416
443
347
972
808
229
741
13
420
855
176
779
150
840
840
493
744
627
110
765
380
935
775
745
874
211
597
237
866
814
355
653
786
849
435
375
992
152
863
303
662
601
571
513
242
990
82
55
849
712
186
561
985
316
55
106
880
684
327
681
872
674
590
505
293
197
350
360
617
947
50
278
486
718
594
282
861
480
643
617
895
351
451
753
521
15
472
966
15
144
358
860
403
803
953
270
181
680
912
467
830
934
875
979
19
579
240
173
155
258
930
251
880
921
727
670
377
95
794
509
690
930
47
999
939
849
499
335
329
585
358
623
62
826
880
532
572
245
101
573
211
178
207
796
225
622
893
406
914
84
291
762
804
49
82
359
711
682
519
125
106
124
748
383
737
213
955
759
609
26
999
813
500
416
117
217
60
265
983
133
390
681
595
890
231
523
671
588
424
166
942
534
683
191
712
627
14
712
60
75
837
100
278
189
673
945
268
164
844
114
991
366
198
782
541
51
239
818
180
845
557
200
183
394
301
39
565
560
974
400
772
821
426
430
974
63
537
133
776
228
328
134
869
977
992
692
727
513
358
528
731
547
667
413
648
732
325
247
113
634
544
598
558
402
567
560
25
355
74
151
779
557
143
114
746
274
533
485
947
668
602
531
883
392
815
359
343
100
151
489
61
330
826
661
168
241
98
971
861
463
511
32
674
656
758
19
913
426
364
899
961
347
392
244
414
837
405
172
792
365
897
236
171
34
214
875
349
956
23
68
952
598
921
262
322
270
276
502
549
440
272
311
489
903
961
301
55
870
571
966
876
323
956
918
19
844
510
405
722
440
438
295
754
356
199
446
41
225
556
650
621
419
543
774
297
421
882
164
248
601
898
20
567
595
554
605
756
164
184
385
636
341
34
151
537
67
496
730
636
259
906
71
16
462
578
302
566
891
537
864
426
917
513
115
244
354
967
991
55
163
476
746
326
873
502
491
33
900
678
891
948
161
328
838
133
785
895
802
599
462
335
734
990
301
57
241
484
894
971
476
253
178
669
594
195
68
854
39
426
914
696
425
41
68
755
771
333
88
564
12
632
23
381
85
118
267
41
202
733
478
482
567
609
718
483
777
874
277
800
16
292
905
488
741
623
95
189
729
980
146
186
53
386
698
650
112
51
829
164
569
731
307
239
279
693
930
652
66
82
699
397
374
180
718
484
278
502
476
481
277
120
710
452
928
468
988
53
316
678
361
84
346
906
951
881
939
289
197
374
445
771
76
458
200
282
98
665
346
595
633
94
505
553
211
539
769
842
742
319
28
157
634
949
648
573
57
422
602
612
579
790
474
11
832
124
346
352
812
298
440
711
426
869
20
336
315
801
141
162
878
604
115
564
270
345
160
32
942
190
419
863
536
188
317
325
747
150
361
91
372
26
729
616
973
73
592
506
402
243
243
414
183
899
533
391
349
786
188
283
14
41
488
669
40
739
730
824
637
141
220
342
167
477
183
969
301
800
381
72
63
571
674
804
608
828
664
236
668
783
978
857
23
382
670
25
104
799
18
502
693
390
206
477
385
712
473
85
321
20
29
329
498
789
825
988
288
432
464
734
266
514
511
448
556
45
143
259
661
509
214
371
110
247
994
573
466
249
58
287
812
785
613
610
262
243
39
325
79
716
783
74
194
492
636
619
680
508
933
557
29
71
789
478
543
689
209
84
938
457
64
24
182
224
955
525
824
494
449
15
388
975
544
138
715
911
323
102
612
225
702
238
771
711
304
710
614
306
406
552
997
162
659
376
595
884
498
306
288
12
660
438
17
367
943
62
228
640
802
797
631
527
636
737
435
403
369
757
123
35
609
309
676
702
755
66
773
930
591
563
346
907
433
859
159
63
718
737
565
340
95
353
260
214
924
698
865
33
908
654
37
192
144
573
920
676
939
328
715
24
793
876
317
668
975
33
323
19
769
576
595
717
326
858
915
614
83
79
471
509
504
434
244
61
162
23
771
660
74
296
186
567
64
724
345
856
759
271
620
768
692
392
590
358
577
866
695
887
885
355
156
913
167
747
505
667
323
158
442
529
421
706
379
595
494
836
61
548
142
75
536
511
344
548
249
655
552
779
93
46
156
62
436
249
436
393
639
791
581
997
36
973
149
827
724
730
937
818
91
814
127
274
653
269
660
461
923
249
239
710
892
555
401
361
601
344
312
929
714
369
638
813
492
191
309
351
717
407
888
882
360
537
769
142
277
559
627
56
41
459
488
59
595
888
620
515
500
150
692
414
679
179
199
591
597
842
361
540
255
444
290
570
111
243
717
594
303
502
607
130
839
765
852
725
495
647
627
753
276
743
334
207
475
913
257
613
710
762
167
900
357
240
165
350
120
795
628
373
925
485
642
582
816
527
720
943
655
63
854
215
470
208
473
289
53
329
941
339
387
32
841
680
961
934
921
853
880
442
647
182
369
738
527
214
683
993
760
432
640
543
496
423
675
977
217
511
336
203
827
854
460
38
766
688
355
33
594
549
650
467
787
733
123
602
776
502
986
249
428
758
943
492
369
797
301
138
291
315
594
540
990
698
197
143
767
599
875
435
128
269
773
804
400
540
921
906
990
398
769
121
572
78
252
392
792
499
907
222
688
257
709
837
845
12
669
32
968
793
917
945
963
142
82
571
269
277
621
225
680
917
731
664
696
260
789
33
660
774
453
929
57
442
385
227
550
976
662
601
118
808
98
176
261
532
574
756
589
127
505
696
479
567
852
608
363
478
121
497
361
551
362
373
660
316
209
140
463
795
437
793
656
423
501
339
119
87
941
773
185
737
804
843
405
597
829
108
57
911
961
531
313
427
476
441
712
210
991
736
807
867
687
109
576
68
659
897
409
452
47
322
478
940
94
323
178
978
98
515
884
320
726
658
670
411
243
451
785
508
254
465
508
318
832
798
225
438
685
376
942
444
939
804
617
44
709
466
381
639
115
300
649
46
772
559
135
219
891
734
52
151
997
573
772
647
472
744
548
874
493
449
737
75
108
430
953
940
964
551
643
759
94
482
27
212
249
291
889
126
956
106
195
437
681
657
702
86
312
655
248
383
833
976
46
948
370
628
353
460
567
245
228
149
895
531
698
616
753
542
859
355
66
456
370
942
651
212
473
38
78
604
928
851
378
747
40
416
250
247
937
222
482
561
589
894
968
892
717
547
759
886
500
509
307
509
92
256
864
523
719
974
742
208
77
74
592
152
795
98
354
220
594
64
18
862
715
593
329
185
964
142
942
289
363
244
483
863
999
760
728
388
995
439
201
756
954
499
632
702
613
696
709
600
951
32
314
855
278
291
226
274
497
669
342
191
417
318
214
567
931
933
611
943
830
449
307
809
359
636
435
110
481
681
388
638
798
911
369
231
241
901
358
461
264
998
561
95
252
992
639
464
346
363
438
389
486
485
468
902
545
866
828
861
920
443
687
811
736
633
84
310
617
768
905
584
459
623
190
292
847
751
975
526
817
569
280
784
804
945
104
577
933
539
695
285
58
696
782
682
194
640
379
175
406
180
149
180
864
548
588
10
540
552
312
571
193
20
194
219
963
58
174
531
567
161
449
838
587
480
883
993
511
127
521
905
775
944
349
134
218
581
840
982
622
467
124
814
842
601
327
435
293
249
982
432
342
12
225
595
828
987
681
13
286
579
81
940
940
542
299
868
162
321
69
17
522
654
693
235
325
395
867
850
774
456
444
843
518
694
482
49
874
189
615
678
458
815
421
857
507
802
356
329
704
949
436
886
82
994
993
901
140
90
659
970
20
48
986
988
895
538
955
963
655
908
972
28
214
205
785
952
485
276
548
200
957
511
430
713
209
153
244
494
900
229
930
638
411
334
904
20
228
891
97
234
904
370
32
576
163
335
102
103
766
873
161
867
566
558
192
114
468
774
79
944
346
674
536
497
397
808
935
616
109
672
232
731
699
817
118
470
600
843
612
924
31
378
611
680
324
598
102
472
854
657
401
250
128
197
390
899
138
328
929
465
330
524
266
753
728
845
912
358
252
323
185
994
562
105
711
248
321
458
375
987
595
446
103
885
189
794
610
985
279
554
594
726
338
861
231
83
950
602
173
662
974
427
335
565
631
516
924
970
204
911
496
864
251
318
628
173
918
980
85
873
195
419
644
70
720
48
423
751
291
932
678
217
724
165
779
110
475
884
459
476
263
875
648
660
622
64
66
334
480
835
308
710
207
788
542
179
46
907
987
225
264
239
889
462
268
15
232
108
676
970
948
556
392
543
904
920
748
936
494
247
771
190
48
45
85
556
309
774
458
966
417
609
163
376
919
290
971
602
908
170
969
394
469
800
433
954
660
772
828
404
50
286
84
187
348
809
598
26
558
266
666
795
804
144
756
148
930
210
39
765
928
900
277
745
907
493
655
286
713
191
608
502
675
668
434
78
206
782
710
507
900
869
307
315
706
575
631
856
167
542
399
33
384
19
419
254
610
809
680
717
626
64
959
62
188
229
88
155
70
310
327
592
586
626
53
445
309
97
498
505
621
644
163
957
900
394
933
777
830
205
125
592
582
717
895
203
432
763
657
898
90
663
879
214
566
437
184
820
921
561
631
926
177
939
819
560
188
397
943
410
575
965
201
244
297
508
392
363
717
672
728
274
315
711
922
385
176
93
94
45
490
106
34
251
63
440
432
922
414
122
225
275
932
791
448
915
226
781
960
397
924
297
98
164
993
128
404
185
761
943
238
256
435
204
786
814
274
647
580
362
581
26
557
868
155
353
263
48
179
974
212
626
268
914
688
93
376
791
584
125
407
586
981
975
934
291
119
926
98
345
458
743
528
794
721
764
65
584
718
421
582
192
831
946
111
962
864
31
175
582
104
227
689
710
961
215
637
805
719
526
641
757
463
152
594
765
308
513
815
547
309
788
26
464
287
878
224
287
876
765
104
507
628
161
661
617
689
577
237
893
374
901
169
361
184
771
803
592
311
821
677
968
842
96
595
831
125
241
610
368
362
994
649
275
552
597
164
964
427
816
41
665
929
485
160
748
344
363
902
428
317
454
505
508
659
736
200
824
803
378
530
355
779
31
799
118
488
424
843
406
332
172
108
51
73
81
791
36
482
162
779
670
634
843
288
513
996
380
776
142
421
686
247
535
293
77
275
599
816
750
580
763
379
236
333
420
34
253
349
903
544
260
87
751
365
438
890
982
18
400
19
911
565
257
47
15
31
258
253
71
861
143
152
332
738
144
435
561
890
730
345
727
183
513
375
595
496
504
983
938
543
546
389
931
856
178
979
390
541
442
582
967
85
866
659
385
70
523
349
110
381
558
172
252
626
365
187
953
127
638
218
622
134
473
303
169
736
755
141
136
874
910
134
865
663
447
313
419
616
882
71
567
263
291
962
116
636
100
847
536
535
444
560
632
176
93
179
82
800
162
418
827
419
46
135
469
644
678
978
143
581
724
723
304
686
864
408
334
639
263
97
444
147
834
818
998
812
120
249
620
539
738
932
579
699
573
991
202
628
603
858
853
399
359
585
343
901
254
831
121
174
987
482
90
392
777
995
362
813
709
466
928
477
278
530
166
417
518
450
283
831
706
992
104
295
791
710
41
254
904
190
303
988
338
439
188
22
469
760
742
509
251
774
779
304
896
581
918
212
165
650
738
589
527
926
214
174
93
509
232
178
698
191
454
70
601
194
984
904
470
477
580
320
203
250
110
230
61
373
97
296
190
634
550
301
65
246
604
786
513
202
538
280
130
678
870
479
137
723
910
644
594
973
805
963
80
444
639
844
417
947
409
238
159
898
575
219
954
447
534
447
431
922
231
633
229
551
260
10
518
530
598
18
132
549
784
448
807
505
834
376
357
131
804
504
250
359
517
891
918
917
657
307
919
444
124
601
118
970
209
302
51
338
893
576
130
609
303
117
449
131
841
345
634
488
113
143
124
446
484
64
795
865
919
917
150
887
588
873
980
837
821
685
237
96
893
709
562
553
797
276
314
925
127
775
933
142
595
579
609
788
598
509
450
59
163
374
983
701
673
242
37
531
712
122
512
214
922
590
136
362
101
628
99
672
21
189
706
676
589
936
602
61
970
420
439
740
711
951
790
98
415
370
181
616
692
217
395
811
737
758
456
207
513
831
150
689
992
90
995
459
258
182
204
246
766
646
644
529
902
31
232
474
276
18
453
473
44
443
124
102
168
551
220
738
572
468
595
830
388
383
223
666
973
186
951
659
314
936
531
532
244
157
667
227
59
437
146
393
422
757
876
715
458
125
880
557
628
530
107
270
851
183
788
86
18
138
544
475
14
826
727
961
909
198
705
973
631
286
519
156
925
685
791
108
60
410
156
988
853
839
214
319
986
619
864
299
544
746
774
935
732
502
263
635
722
812
274
536
284
690
932
290
122
118
252
461
349
270
58
406
943
770
203
498
880
911
512
77
719
242
210
543
662
821
316
981
314
825
109
995
629
582
522
977
770
165
114
769
699
557
117
482
685
116
12
774
300
136
458
219
896
258
77
298
778
393
120
57
903
610
456
902
612
664
375
278
896
605
766
106
418
955
868
887
721
729
230
345
622
784
812
751
834
932
613
158
928
299
687
324
190
127
80
386
405
944
724
115
952
835
810
248
350
553
130
312
835
757
255
851
166
452
742
118
543
649
80
719
280
294
174
765
927
20
366
432
587
510
693
268
718
997
920
967
562
707
367
837
390
630
282
351
424
482
944
19
361
237
552
841
345
608
973
274
81
256
154
469
962
936
677
546
191
968
997
47
345
246
950
100
538
181
474
320
391
368
320
85
648
749
939
78
897
969
327
901
144
907
884
71
88
779
201
122
391
527
209
138
614
100
254
838
733
195
575
45
215
647
265
825
271
384
399
864
619
842
972
464
134
225
485
290
927
848
619
587
950
762
52
43
208
692
606
278
989
275
935
811
491
216
321
632
770
176
422
796
836
189
367
563
157
598
134
716
289
716
742
469
493
777
886
160
528
892
354
310
820
31
263
545
894
62
305
173
274
469
884
350
619
507
97
786
447
971
806
701
459
289
679
49
493
798
223
28
260
394
390
446
768
252
877
512
232
539
363
114
824
369
124
732
289
883
564
556
520
713
255
194
353
245
357
225
664
909
139
583
983
890
880
898
488
343
182
301
192
690
849
428
126
454
832
413
449
595
852
386
917
608
798
366
351
866
379
138
783
485
448
201
602
205
816
823
480
267
290
738
62
324
460
132
321
436
304
181
116
428
940
575
869
651
544
107
174
946
399
219
528
959
33
740
871
960
606
667
873
696
524
102
101
610
907
994
28
954
784
514
642
300
292
374
289
537
988
360
323
848
121
706
607
773
182
876
743
704
713
532
216
744
667
892
332
304
862
202
72
567
900
918
567
666
902
156
503
126
102
209
470
583
967
230
931
965
236
96
814
557
993
599
131
447
760
552
724
940
899
103
155
672
909
596
598
141
763
893
563
380
323
151
777
472
102
795
861
66
58
219
883
572
194
553
69
850
523
646
791
616
920
124
308
795
156
656
691
559
872
608
970
738
120
822
776
864
572
301
199
509
306
919
99
185
126
972
989
813
638
816
707
117
578
123
40
383
818
208
665
284
347
918
248
179
387
640
15
66
742
895
628
764
58
705
249
62
797
428
573
735
523
211
687
109
325
440
689
180
777
264
350
10
556
465
714
738
546
966
801
547
893
512
563
96
56
874
639
237
413
122
749
876
597
304
332
662
620
764
497
989
757
638
51
351
788
729
588
534
410
43
53
625
748
781
51
305
821
509
255
229
895
466
244
74
835
719
716
342
537
801
685
202
905
287
459
873
361
291
626
761
557
332
495
253
299
941
826
701
29
502
659
367
652
279
119
347
203
886
668
400
642
48
940
809
755
345
714
691
455
800
141
30
969
39
519
369
753
609
866
366
41
514
293
830
643
535
691
333
166
539
590
305
698
118
519
322
660
218
851
414
592
42
946
231
609
977
146
793
35
175
813
103
409
783
182
152
289
578
576
92
778
378
62
17
737
897
724
86
529
110
244
530
567
794
345
403
55
130
359
279
205
310
667
128
524
196
979
851
540
403
750
423
201
904
408
859
689
785
721
512
929
473
283
572
154
103
43
382
522
329
155
369
18
879
967
15
984
345
176
548
809
885
37
790
335
218
973
938
413
44
171
777
783
578
273
404
169
755
689
433
877
728
712
359
913
308
367
652
112
817
852
845
974
852
825
266
786
197
180
841
508
391
784
674
487
663
802
568
118
907
24
784
329
828
241
254
833
289
604
197
36
380
644
526
411
134
176
800
36
862
178
291
431
47
367
711
347
781
18
400
698
156
769
218
627
99
412
476
773
118
235
372
877
977
647
686
798
708
412
369
20
244
361
54
684
889
818
137
297
374
884
262
269
753
20
260
711
180
136
408
942
408
359
749
444
67
408
52
655
642
146
781
661
675
271
375
276
521
320
625
165
179
732
139
955
209
647
211
933
793
856
877
622
266
285
589
767
512
155
851
987
273
989
990
896
521
507
971
891
385
955
517
385
398
316
621
349
571
106
606
767
513
925
508
923
698
422
35
616
940
83
643
868
461
152
872
359
275
870
218
885
384
807
410
182
852
337
309
244
183
535
494
189
162
638
689
646
619
408
265
480
387
930
907
113
122
733
204
486
172
794
378
511
911
173
976
191
514
816
574
706
347
500
716
199
547
460
353
623
459
27
301
978
663
125
557
120
293
884
700
422
201
537
567
433
507
207
965
259
747
928
691
284
27
722
801
642
753
657
970
443
697
917
54
233
787
145
230
594
806
470
205
886
868
467
403
883
548
277
129
473
90
272
377
414
410
716
866
115
13
960
408
641
668
250
889
603
443
135
346
523
822
573
515
787
962
722
468
42
664
577
375
410
952
702
703
766
518
101
975
27
114
732
347
782
329
183
532
210
846
884
274
295
773
905
360
152
967
178
217
973
863
868
800
227
859
962
239
895
359
940
542
681
116
980
315
860
168
383
994
594
72
315
294
265
592
719
596
676
683
55
445
242
517
234
126
503
794
797
98
581
787
763
462
925
847
882
878
295
889
804
609
16
321
468
954
324
647
324
243
13
501
653
936
606
320
987
808
223
719
648
193
625
191
94
313
583
102
568
779
532
473
448
322
269
955
658
29
813
534
679
983
303
693
573
235
210
494
792
339
812
271
533
521
995
602
502
644
361
317
909
990
856
759
862
240
337
720
522
464
15
238
702
947
304
138
33
507
363
152
782
460
649
310
150
300
13
992
215
709
984
830
905
33
126
659
345
946
500
870
351
958
693
655
110
840
759
303
262
647
50
147
248
542
883
692
612
809
139
226
912
928
346
873
793
705
257
214
656
715
406
641
667
576
554
573
943
695
29
270
408
475
402
298
233
748
393
755
48
400
327
256
594
783
237
528
764
460
307
495
369
821
506
535
387
912
842
419
946
421
151
244
823
225
755
509
181
522
215
976
238
974
561
563
193
953
16
184
610
280
116
584
578
30
913
809
737
498
646
330
331
813
795
636
440
530
646
367
778
636
67
562
293
761
403
428
862
528
360
324
866
707
937
273
581
770
679
980
405
137
616
370
892
356
982
244
553
630
353
179
22
35
153
731
459
880
84
330
283
837
471
880
881
400
663
712
439
183
611
89
421
149
659
478
327
312
619
667
527
863
829
251
464
925
386
189
25
252
145
841
141
463
926
953
835
201
771
291
489
163
128
940
302
641
583
40
245
818
395
494
738
915
380
622
556
104
242
387
227
699
935
562
775
406
617
240
172
273
93
941
187
173
535
447
453
632
780
800
208
548
689
560
485
853
36
583
535
933
635
51
327
825
949
686
809
659
868
604
854
631
18
892
902
678
911
161
660
472
653
862
428
406
997
476
551
976
633
164
449
105
472
490
635
60
359
572
264
235
362
336
454
822
27
921
921
486
771
794
725
528
653
162
200
659
63
49
107
629
294
898
128
261
291
84
298
104
899
506
28
615
496
311
540
910
759
572
356
896
287
783
548
345
277
783
708
712
500
210
995
574
201
298
391
958
497
692
345
723
491
630
738
908
468
99
469
859
100
159
676
413
293
357
553
608
801
561
980
394
779
213
732
495
212
458
265
967
709
915
453
772
210
480
433
360
442
762
426
813
376
941
184
242
930
752
42
367
659
908
546
655
437
588
136
984
917
487
623
163
18
57
265
187
861
681
426
932
79
225
79
696
183
923
957
451
27
209
437
485
87
599
816
599
265
875
433
683
651
966
960
495
410
744
855
227
64
688
331
941
892
415
190
366
319
84
782
718
215
538
342
826
851
47
420
63
561
265
761
237
383
740
604
682
278
705
220
618
113
736
98
454
650
274
99
831
592
27
270
678
375
168
21
156
122
705
387
849
749
501
783
306
832
143
884
630
809
981
106
359
906
340
585
494
986
849
723
146
87
917
40
350
23
210
914
597
482
167
113
434
206
883
356
976
493
682
859
585
996
430
456
525
230
526
815
587
922
531
554
389
698
63
12
290
341
213
914
428
293
94
833
722
49
123
330
864
223
404
842
528
29
741
883
911
311
712
719
43
29
388
826
296
568
381
18
56
55
445
144
540
994
817
837
287
921
127
727
13
696
264
862
462
644
299
602
79
919
477
408
950
313
236
253
888
580
583
149
28
159
90
767
627
137
229
987
949
749
665
560
908
803
867
125
426
734
510
903
288
821
350
811
169
434
779
892
777
40
671
449
178
323
290
72
107
679
415
275
455
623
73
848
321
536
285
181
897
926
267
682
808
57
203
751
410
624
959
449
716
356
181
143
599
922
172
414
925
398
543
752
274
364
826
702
432
217
405
667
865
875
872
583
570
486
486
499
402
618
864
795
442
903
851
330
843
721
938
890
546
340
60
644
740
832
412
365
660
923
904
581
631
660
857
86
855
476
716
736
771
697
670
623
72
537
772
408
679
652
485
935
274
188
690
254
35
515
572
246
153
164
821
321
191
968
506
215
918
506
505
618
634
682
697
547
66
717
700
471
20
337
993
798
259
702
106
277
505
415
282
78
587
215
32
734
969
981
607
914
855
961
57
847
116
993
174
568
490
863
165
62
601
250
473
780
316
249
458
933
820
668
495
837
316
746
323
822
801
716
713
777
517
912
132
920
398
433
240
213
904
895
105
828
556
984
51
449
874
648
132
43
403
459
820
520
682
881
167
415
40
388
97
70
126
525
715
870
886
561
201
919
916
881
633
933
294
801
364
643
233
77
897
612
657
608
640
477
356
979
679
391
718
679
355
797
523
180
747
757
559
359
470
75
490
736
829
68
920
421
743
248
658
417
929
928
687
178
14
268
279
536
365
608
284
754
291
407
734
570
759
799
662
863
153
628
629
849
858
500
474
317
670
64
962
223
843
786
64
440
439
63
303
633
788
504
325
865
607
566
416
709
768
231
861
517
317
842
238
185
743
58
909
73
543
749
305
50
438
794
618
778
432
60
391
614
523
236
667
913
87
984
983
856
116
561
207
473
49
78
92
150
436
19
476
686
844
987
131
851
630
292
355
34
914
890
585
347
237
167
910
377
425
572
784
206
773
163
928
141
771
745
649
969
728
181
970
232
809
169
611
899
869
259
186
530
286
436
736
575
894
652
358
912
665
977
49
192
300
308
822
890
632
717
809
587
93
120
746
931
203
299
28
317
490
466
382
280
92
588
285
896
195
76
679
667
189
181
710
698
563
100
102
399
557
175
446
234
224
790
519
878
279
854
604
751
207
775
215
397
584
774
595
234
291
133
749
79
544
253
78
394
318
645
482
151
431
921
993
107
405
789
153
408
810
184
419
428
329
93
356
605
444
196
563
644
513
810
612
163
795
187
373
572
700
194
314
241
526
260
424
159
907
383
221
791
78
448
823
444
457
473
180
537
237
178
895
964
427
68
334
667
836
227
994
996
541
431
708
937
821
870
775
650
996
78
634
311
415
331
981
628
79
971
704
355
922
530
536
347
395
509
541
817
892
772
578
755
739
829
768
653
441
443
438
867
818
189
513
50
312
205
694
879
560
619
16
853
176
346
111
439
455
471
712
158
393
74
609
70
896
389
27
150
19
804
356
892
720
553
601
47
411
714
323
754
195
269
952
202
926
576
188
526
613
787
714
372
857
74
23
973
200
19
461
658
633
970
353
609
639
459
449
325
691
772
483
173
644
13
157
789
782
367
888
682
124
228
824
725
969
189
78
39
180
589
365
998
845
971
197
674
366
343
774
135
710
68
26
753
937
96
972
919
525
242
655
398
949
459
106
654
63
777
352
933
253
927
252
811
486
30
209
388
516
301
609
312
317
270
858
474
98
899
595
242
113
288
338
489
841
406
185
229
512
146
224
279
303
886
110
718
473
403
410
386
47
617
976
804
377
728
875
386
991
120
836
211
318
370
243
31
546
752
186
841
451
403
427
726
340
935
550
894
535
319
840
351
901
171
408
892
141
678
467
212
352
155
881
323
635
118
308
882
640
896
51
606
96
652
630
15
434
253
93
594
834
988
891
139
958
278
613
464
797
682
672
284
458
549
312
317
400
163
754
769
864
275
749
129
340
570
279
938
433
820
272
205
465
44
540
956
264
166
623
467
395
73
664
208
800
995
581
711
310
838
196
529
429
313
470
210
921
235
86
446
598
585
459
22
408
286
747
555
272
470
93
73
745
718
687
216
442
482
187
242
419
560
106
216
904
40
625
322
878
855
236
870
130
920
786
754
234
270
44
242
724
323
178
820
957
406
448
90
888
457
91
72
346
861
475
20
820
507
537
317
200
543
761
30
700
730
859
691
534
88
975
969
677
798
875
967
432
450
894
244
689
240
397
407
351
556
581
918
224
470
324
223
506
977
891
164
724
917
965
461
784
909
142
831
608
218
328
205
805
609
681
638
777
286
491
277
837
69
68
801
79
926
419
694
250
972
156
113
762
831
858
130
319
884
675
200
436
787
816
453
237
719
393
886
961
574
624
893
630
146
365
149
711
658
754
186
484
663
602
765
163
739
169
227
425
31
974
321
556
308
713
952
818
373
334
103
121
354
829
39
570
873
853
212
958
450
632
722
321
435
339
742
816
501
439
734
482
419
303
95
924
929
379
449
634
445
443
848
844
723
49
110
807
899
169
470
649
510
325
722
670
299
116
265
466
112
946
313
237
244
178
531
681
849
918
740
166
209
440
20
850
99
965
30
515
956
47
579
693
279
331
129
507
877
23
853
803
274
367
644
101
609
963
426
450
670
794
413
862
282
504
532
986
940
529
123
762
415
710
923
909
528
443
345
918
981
25
938
299
113
461
433
741
513
547
316
660
413
342
662
24
325
551
639
893
304
726
190
665
673
807
658
63
597
500
682
647
907
620
728
840
263
874
986
435
932
282
643
880
339
323
990
598
545
75
648
230
464
710
66
886
125
839
997
904
207
73
394
532
321
992
250
577
600
666
496
723
255
301
742
346
545
785
38
745
414
761
217
703
10
309
639
914
604
249
329
711
885
361
201
902
653
656
622
708
92
713
38
312
428
858
639
834
364
932
371
168
732
37
995
40
184
772
749
179
809
302
873
468
382
297
243
689
697
786
662
418
359
846
831
225
41
595
85
322
480
188
289
929
947
217
899
835
280
368
612
649
394
476
848
223
532
669
981
499
937
718
264
335
334
644
198
715
415
732
321
351
370
677
537
28
903
140
258
367
815
400
270
887
809
312
800
710
306
469
577
748
446
719
764
44
909
605
252
125
684
653
890
564
239
614
732
522
868
738
261
812
102
697
104
449
988
91
441
671
92
676
872
94
192
50
456
374
507
79
253
914
66
818
701
576
134
384
475
65
787
32
956
492
112
941
104
35
848
426
102
795
690
222
975
843
137
829
676
49
446
197
452
772
166
665
509
70
536
830
592
770
139
313
273
853
140
43
432
215
80
817
482
419
270
825
334
31
206
667
95
719
695
241
530
226
266
73
489
176
671
488
477
385
453
749
219
230
597
735
450
630
952
468
530
879
210
682
505
675
217
985
221
977
962
843
786
227
23
577
364
566
307
308
92
63
936
915
176
645
575
76
972
531
30
105
710
708
384
293
338
637
708
55
224
532
912
901
809
151
619
224
654
386
181
37
277
553
285
812
70
87
413
584
197
984
780
393
332
387
415
338
895
129
69
782
971
849
620
795
140
856
404
101
427
287
768
223
406
70
310
525
693
569
972
291
672
598
297
67
229
11
430
60
954
89
763
574
146
314
189
179
977
533
565
118
454
305
477
764
668
137
806
698
532
868
71
115
431
639
345
860
605
823
670
294
874
329
88
428
264
990
298
499
368
364
928
943
86
883
74
253
657
794
686
476
448
224
377
992
477
13
870
575
85
737
413
115
950
591
662
860
942
135
409
187
62
255
141
696
125
19
994
356
943
895
148
32
15
326
33
48
105
347
164
504
313
455
926
845
85
256
960
725
139
298
383
201
473
795
507
291
745
534
800
275
215
48
168
558
379
164
465
903
89
648
36
852
19
780
254
577
44
594
832
118
719
796
591
522
996
749
601
444
861
815
605
551
778
882
693
694
473
226
383
159
22
634
334
11
868
957
242
356
623
87
861
652
328
696
675
894
928
813
621
984
336
111
405
944
476
228
918
308
474
703
106
250
618
500
897
432
890
819
532
358
637
77
894
360
213
319
768
332
764
53
452
601
154
957
776
725
976
924
862
12
411
236
891
917
934
902
286
123
128
232
98
117
904
52
120
661
755
140
272
194
855
267
95
808
512
548
195
787
353
856
824
125
624
795
712
54
246
587
795
934
921
935
496
640
106
959
815
730
756
197
699
219
991
620
51
990
289
413
520
290
330
614
975
984
342
288
833
502
768
360
106
40
116
521
272
316
450
445
728
203
114
654
864
368
227
136
48
818
92
313
639
780
90
626
959
619
12
959
635
230
125
337
704
507
216
317
39
802
915
639
966
614
270
257
706
838
835
147
747
650
79
939
205
957
412
44
331
568
782
379
320
591
489
210
32
257
610
869
581
136
797
497
629
639
830
708
977
828
284
194
992
203
309
727
846
293
774
582
237
789
878
490
695
980
889
912
252
430
142
808
518
549
104
921
604
516
703
26
788
834
988
429
799
964
316
18
811
70
261
817
760
720
540
87
372
116
990
866
961
111
13
189
605
196
707
706
707
461
186
280
948
485
856
754
485
528
310
359
353
450
286
466
224
325
771
72
387
122
307
84
737
525
757
414
509
704
241
26
36
755
867
412
48
921
636
255
755
721
264
193
276
257
394
489
982
523
668
289
445
953
180
434
156
724
291
413
800
801
293
187
786
327
963
951
280
55
637
692
974
158
481
512
140
688
595
733
427
461
571
588
461
983
701
688
804
414
941
329
871
787
310
17
653
90
964
68
825
832
787
253
544
134
745
664
589
573
187
880
732
222
368
364
796
108
854
95
118
403
578
424
619
705
88
768
14
346
757
551
506
964
657
106
793
633
804
692
408
768
891
143
901
917
500
842
316
341
110
889
248
240
976
478
415
650
753
134
410
922
86
960
919
979
880
113
325
527
356
115
656
418
114
121
908
363
355
691
934
142
582
361
531
587
172
577
644
331
985
578
945
351
210
384
481
381
838
692
152
505
640
53
498
252
906
725
764
366
428
96
930
726
912
88
335
749
14
955
45
507
703
747
648
278
456
954
562
939
595
321
188
356
470
585
313
324
544
929
712
598
201
968
305
369
314
232
505
905
716
427
859
251
121
609
417
875
783
267
769
386
428
682
440
81
738
799
36
58
986
746
258
480
698
290
29
246
403
691
447
952
19
23
106
870
911
85
922
469
401
860
543
467
943
350
889
986
277
162
406
610
443
25
66
248
878
218
949
994
531
756
208
127
941
171
791
559
350
368
435
593
723
263
434
685
927
76
883
524
120
922
585
71
648
70
609
94
716
127
459
372
227
357
963
327
435
364
339
805
221
88
189
390
451
760
900
242
219
553
913
912
77
570
780
938
925
177
314
845
900
460
147
333
877
248
229
323
258
620
988
394
258
472
923
60
770
649
478
199
373
10
688
381
277
213
481
420
136
643
167
560
284
827
940
956
850
241
122
613
41
587
972
214
861
165
41
475
601
711
680
305
933
256
924
243
437
360
109
330
753
613
244
997
93
768
171
55
856
913
167
19
106
741
991
403
612
409
861
634
186
308
612
565
40
70
508
378
554
204
818
586
607
855
472
764
953
133
815
498
168
254
410
538
220
667
10
967
896
867
303
560
721
709
284
31
761
82
597
247
762
526
703
31
760
807
230
748
710
426
589
41
848
208
837
561
702
897
721
274
170
138
600
898
843
529
519
509
118
167
173
17
449
80
142
181
963
286
943
116
534
343
114
322
528
468
998
660
143
175
189
516
63
82
442
278
459
820
633
261
906
661
797
88
553
468
167
616
957
755
247
827
293
126
828
742
834
334
623
564
489
187
70
329
906
794
36
93
594
535
762
938
274
710
631
334
368
27
450
19
852
40
909
947
560
289
866
742
814
118
861
411
387
988
900
118
19
366
765
578
36
436
784
38
343
151
130
655
750
347
683
627
662
252
912
333
899
604
171
983
747
597
455
700
631
23
46
786
613
676
592
914
377
290
919
726
825
295
550
903
660
899
755
646
393
18
302
56
427
216
976
166
407
100
614
858
729
405
159
305
945
929
925
918
29
341
13
136
455
116
152
411
538
132
547
842
364
392
255
114
351
621
630
260
186
488
812
105
192
602
254
925
199
561
435
22
655
256
466
97
234
525
163
254
298
665
769
187
134
704
217
712
429
18
25
933
362
194
938
491
604
895
993
183
740
451
86
953
611
500
414
789
48
448
940
461
673
726
282
210
948
181
885
558
238
945
400
702
789
849
150
515
189
234
961
113
589
502
324
495
934
175
297
774
156
376
484
695
893
802
869
226
749
658
770
19
142
897
362
405
470
223
900
494
552
679
161
956
785
800
566
656
391
956
455
643
573
943
368
385
745
578
971
698
498
405
110
466
665
988
471
167
985
817
15
408
403
38
782
998
335
923
185
865
491
788
318
477
729
362
310
438
769
947
662
337
819
487
765
902
180
745
851
636
214
619
716
229
790
257
807
338
281
268
497
758
714
325
719
880
209
315
899
188
463
750
348
851
540
303
172
228
728
684
766
955
917
914
47
213
495
911
280
920
38
583
628
994
145
324
756
550
974
544
348
255
95
348
733
938
186
466
188
643
881
601
112
563
247
576
91
372
767
755
857
708
224
606
283
476
550
897
342
761
893
192
675
330
614
27
971
892
108
769
37
56
633
379
505
368
759
54
24
990
836
191
244
42
209
268
183
369
51
461
344
65
734
520
801
194
925
346
982
526
574
232
215
991
434
22
422
167
578
745
946
671
738
506
871
416
275
595
569
365
287
290
347
393
847
405
73
180
819
904
418
891
811
468
676
42
499
428
825
515
36
217
981
585
193
942
298
353
677
437
134
989
20
492
54
564
544
860
519
180
329
636
144
998
54
980
665
845
809
199
401
455
663
58
765
944
697
580
343
752
785
195
37
636
451
331
559
166
79
807
847
569
679
375
926
694
531
86
821
625
270
640
218
735
302
559
973
164
42
570
826
127
333
836
375
188
388
631
56
746
944
704
882
487
74
739
744
338
847
110
713
807
830
775
767
793
777
784
926
384
600
827
124
553
889
667
567
583
275
551
969
806
203
505
448
26
636
584
497
795
609
681
339
614
326
902
267
109
708
952
955
482
298
630
414
594
843
370
805
360
427
683
28
576
384
358
989
282
191
888
132
865
416
512
593
643
925
674
533
562
461
417
672
346
472
477
702
350
169
987
975
385
173
29
910
383
16
805
425
283
472
438
291
466
631
489
595
357
387
284
852
650
686
859
399
536
211
169
485
703
406
792
800
450
271
184
221
244
22
545
929
703
376
862
603
842
770
563
51
203
549
851
902
933
977
841
146
602
694
888
868
621
291
870
247
352
897
484
555
179
169
732
323
821
524
40
820
193
362
493
373
246
690
244
778
875
122
158
978
652
676
198
25
161
607
314
356
15
723
117
940
368
241
99
121
999
408
683
404
101
680
260
913
57
933
647
575
866
77
651
541
568
311
967
110
351
228
79
399
118
294
187
137
112
397
357
640
261
373
78
490
779
682
486
258
329
81
16
803
946
321
494
930
690
967
524
407
24
289
589
335
203
267
693
496
728
745
20
941
919
563
723
95
947
366
729
294
413
324
348
812
988
950
138
858
81
336
670
691
80
320
640
690
742
363
720
36
810
325
960
345
240
20
788
463
814
745
490
555
997
903
670
396
753
457
528
456
317
648
565
756
356
433
818
21
511
733
447
93
874
419
418
896
892
284
653
564
35
811
829
979
944
179
71
525
970
213
384
986
606
946
864
460
190
255
680
668
169
919
116
530
415
125
241
618
603
602
913
807
203
884
63
345
281
54
379
195
280
250
423
301
937
571
693
893
870
312
998
718
851
540
640
992
622
671
215
888
280
597
534
155
292
239
806
297
833
553
163
253
34
478
872
254
932
204
209
28
760
20
694
189
281
880
826
651
772
366
734
716
202
816
614
522
247
775
269
104
817
242
281
912
992
23
976
270
421
112
431
829
787
81
429
798
653
925
148
597
326
417
528
450
343
559
331
360
692
979
442
860
474
35
989
306
25
558
77
459
578
511
317
92
536
82
676
989
679
247
446
738
653
985
855
716
351
98
591
969
761
344
796
665
183
287
593
358
947
602
550
852
202
624
437
599
882
627
418
662
966
538
258
743
771
946
541
946
987
104
887
866
675
92
142
769
850
14
606
726
687
140
643
214
961
747
336
79
149
766
913
945
781
586
715
861
181
390
639
254
140
275
847
368
669
840
113
671
321
753
446
543
707
679
554
672
647
833
709
655
532
454
436
650
829
940
461
477
419
667
85
473
509
951
424
62
830
126
816
165
436
265
171
906
118
796
184
809
83
905
866
572
797
718
950
567
45
773
904
295
43
105
943
312
624
254
466
177
738
520
840
22
763
170
305
984
917
358
690
343
674
795
976
122
616
765
796
925
613
887
884
331
585
844
288
184
243
416
993
441
975
814
263
474
591
128
493
955
511
974
226
115
450
126
170
945
564
827
656
583
480
272
728
136
140
796
322
44
519
160
371
706
782
300
531
671
450
925
932
881
906
195
25
230
569
94
395
596
912
48
405
417
960
925
22
25
893
630
695
633
685
533
764
496
412
613
68
667
11
633
755
559
410
677
30
664
268
932
429
600
915
348
919
569
356
217
160
513
871
931
189
990
834
492
573
234
470
969
860
210
836
947
732
60
139
301
431
192
630
390
666
291
69
28
242
412
854
767
593
99
338
905
421
995
357
611
219
475
799
515
292
734
84
179
559
483
34
127
28
176
113
974
304
674
49
426
444
197
158
721
15
818
326
494
812
50
19
422
530
981
419
613
395
845
825
775
590
916
356
10
405
331
196
237
417
612
767
944
549
595
692
993
121
253
750
381
577
828
800
165
138
666
661
613
971
509
116
937
633
980
191
641
648
111
928
378
807
779
82
295
530
550
314
817
246
128
920
455
855
12
176
292
108
370
685
971
269
36
174
841
99
641
183
165
506
649
427
72
448
168
452
11
166
553
848
386
477
918
87
922
153
524
409
670
80
818
400
966
680
483
402
167
55
398
506
555
769
460
585
358
350
622
981
173
770
298
151
565
174
668
984
963
390
480
647
834
507
75
404
143
81
113
244
593
562
552
209
993
184
543
213
781
51
168
421
751
907
503
200
350
190
951
123
943
24
638
579
16
269
185
612
946
325
50
400
78
393
478
506
477
685
728
851
78
687
325
253
876
500
594
671
470
572
932
345
335
501
325
173
471
125
364
897
93
684
558
589
992
661
13
668
621
707
228
719
149
21
690
515
737
988
133
217
439
628
617
540
169
326
905
652
649
78
838
94
486
369
757
614
551
21
554
121
75
937
889
989
689
912
960
883
268
192
910
326
622
174
976
559
71
69
372
537
613
731
786
847
183
886
68
587
75
111
149
650
937
165
652
420
455
233
916
561
823
742
480
809
493
510
568
607
554
275
243
856
929
83
963
656
198
594
906
548
570
694
557
601
496
359
205
905
628
36
60
994
760
411
891
332
476
770
947
227
743
297
383
871
418
166
299
193
106
549
277
341
578
848
614
396
505
917
519
75
783
201
108
984
900
692
913
640
485
690
242
712
36
682
250
966
506
61
324
475
836
287
266
948
708
915
268
362
407
193
154
251
467
422
232
948
593
984
972
994
584
805
210
360
680
303
818
387
906
380
616
985
650
880
441
21
346
695
131
794
914
672
132
397
310
753
392
745
253
935
629
333
260
676
732
311
781
189
537
145
939
797
138
807
52
390
604
248
92
479
306
779
465
515
22
60
47
840
29
325
536
816
248
351
253
423
162
691
952
474
708
828
976
178
334
515
808
687
262
672
436
336
289
677
326
824
578
472
796
717
721
710
715
345
729
851
666
965
149
615
455
767
97
23
203
309
357
981
694
423
547
731
641
251
400
930
802
573
299
898
445
249
110
616
415
415
690
282
975
322
152
123
997
236
671
14
317
177
242
568
471
386
284
634
347
575
803
617
751
983
990
686
819
120
285
949
311
632
139
970
661
690
46
737
580
290
29
966
422
56
294
669
302
47
189
532
252
713
689
407
609
698
877
497
335
848
400
390
398
112
108
553
792
511
357
399
539
137
962
740
773
980
862
949
493
66
760
983
561
288
495
208
674
66
816
919
214
289
158
670
896
176
508
394
821
269
389
202
43
218
297
767
798
385
142
486
57
475
782
823
793
122
550
35
843
867
216
859
106
872
985
599
164
853
411
537
468
896
212
805
614
288
691
731
970
175
441
457
480
700
71
799
939
826
261
818
184
868
886
838
571
39
682
813
539
112
427
39
675
478
640
547
839
488
727
333
447
238
73
825
919
967
788
401
144
280
730
23
452
152
456
580
846
779
649
213
172
157
334
274
753
795
972
42
851
594
933
551
957
101
828
608
665
990
139
876
818
754
868
40
504
860
763
231
871
601
235
280
501
176
562
114
546
541
659
980
858
969
269
937
497
36
914
739
97
740
164
920
750
932
590
682
408
972
671
415
94
234
160
119
889
522
382
777
95
113
867
924
372
224
196
797
902
521
386
684
910
675
80
82
862
920
926
515
826
609
169
960
143
511
55
700
285
838
469
755
627
173
216
958
433
120
270
27
323
24
662
807
853
932
78
846
343
267
367
576
187
100
701
277
123
150
246
278
422
822
249
704
760
144
271
798
333
16
202
492
57
525
607
979
454
808
148
377
461
354
577
470
146
96
841
855
764
624
301
154
823
629
768
937
848
588
516
146
446
687
884
455
927
623
832
775
711
800
943
873
704
710
141
804
315
47
766
95
994
223
24
179
358
727
443
900
555
266
892
249
370
84
185
318
670
314
901
927
329
43
670
237
951
129
193
884
268
802
608
666
34
235
205
223
931
164
750
162
81
479
223
537
823
612
17
305
665
287
378
695
254
164
909
101
311
42
126
991
857
552
414
69
569
181
908
48
516
456
633
648
743
900
106
958
507
891
772
447
457
705
312
420
661
624
808
597
14
534
68
558
297
121
358
697
742
38
97
354
19
496
665
666
976
917
263
47
170
33
773
462
806
981
102
109
548
121
848
877
687
557
602
992
892
483
894
492
900
188
195
415
697
368
80
739
624
492
149
588
436
591
897
743
377
683
932
852
103
78
857
606
254
863
777
815
880
758
728
317
728
572
433
281
692
982
686
988
231
803
100
784
346
474
816
899
459
658
787
435
881
116
351
332
155
458
52
139
200
335
535
452
93
55
829
461
611
438
967
165
310
824
408
412
512
421
502
244
727
720
383
950
689
226
784
717
807
511
822
446
581
542
91
773
582
898
470
296
696
641
954
783
214
627
457
485
67
613
803
143
945
801
498
575
656
144
988
202
90
306
780
889
816
541
616
67
744
270
747
39
40
830
935
644
770
710
903
217
187
185
51
263
729
492
638
677
758
83
967
580
144
736
707
296
923
469
771
725
865
833
797
258
534
740
617
525
14
320
600
624
125
541
456
143
682
278
930
234
360
359
315
370
312
198
229
596
803
167
625
646
473
310
668
822
735
200
100
427
738
314
985
30
167
52
994
750
527
972
286
197
608
355
690
782
593
756
739
616
838
335
795
786
378
892
827
952
94
344
206
534
434
160
129
935
44
715
895
749
94
211
214
559
141
302
23
36
301
992
212
83
663
329
666
891
948
425
819
677
685
432
433
575
179
536
440
809
935
250
813
283
932
238
258
995
493
905
229
206
861
357
87
532
841
46
935
124
198
201
229
90
503
316
23
820
385
550
109
384
75
787
386
629
376
212
969
238
59
954
465
383
949
390
735
492
948
332
358
753
448
353
417
213
265
461
256
65
106
364
982
775
866
584
878
577
819
648
363
920
958
636
223
216
158
91
346
752
287
17
740
481
279
626
979
298
859
950
902
915
187
882
40
492
950
733
514
719
679
239
761
90
939
175
605
167
600
570
740
82
55
160
838
58
32
475
554
691
673
598
929
936
645
602
544
518
313
822
373
349
144
875
524
242
801
944
438
957
402
929
768
551
260
373
308
658
109
124
263
774
646
37
54
292
458
882
940
935
310
842
691
166
191
309
174
83
959
316
964
328
287
374
868
343
585
657
341
541
575
435
347
622
730
719
986
813
952
668
832
922
147
987
556
193
12
866
918
599
750
730
354
578
184
161
72
318
831
870
455
669
657
25
230
380
806
156
91
441
615
133
914
392
911
393
509
75
49
638
124
985
107
641
967
887
830
91
202
602
562
788
162
391
819
194
951
83
659
807
426
40
104
529
78
463
572
758
975
223
230
13
682
728
445
143
445
977
610
85
431
423
461
238
794
885
910
452
390
127
859
301
150
241
790
718
981
602
784
505
831
464
422
820
443
887
185
995
898
761
183
666
532
136
256
338
946
230
391
353
246
830
642
494
777
290
825
284
417
921
385
262
90
670
553
839
323
781
935
157
362
510
334
565
155
993
971
863
601
804
878
803
128
150
587
647
281
384
357
702
647
427
785
452
230
301
950
525
127
372
222
986
710
454
832
900
118
313
977
186
36
934
563
707
679
346
135
471
863
502
128
863
207
959
959
144
996
519
511
505
598
623
806
199
977
535
928
82
327
70
792
806
92
680
346
498
114
177
215
828
377
597
504
751
169
683
842
315
50
186
430
409
17
869
95
429
947
511
33
893
493
438
468
28
861
913
594
815
586
264
627
529
40
59
820
772
196
21
921
100
589
433
757
712
67
251
128
427
891
240
21
595
276
535
857
881
837
604
230
605
651
556
468
962
62
847
52
252
749
793
562
584
217
912
425
180
914
394
338
28
244
395
718
792
791
325
539
316
472
920
529
63
94
816
955
450
513
745
317
525
509
20
238
706
29
754
61
980
314
385
291
811
715
76
356
319
773
458
242
721
418
359
145
949
453
446
65
572
356
399
953
859
757
422
263
47
853
394
398
330
375
69
710
279
424
276
393
814
908
725
567
406
628
810
82
732
181
446
715
760
731
795
270
922
701
746
496
240
667
89
539
892
413
353
42
41
167
69
348
301
872
259
368
100
764
458
973
458
489
403
872
466
588
291
235
419
379
474
289
269
393
137
500
599
471
210
942
301
503
891
182
852
216
390
783
129
985
559
485
173
356
795
443
203
489
273
644
63
134
923
126
846
116
379
453
26
493
543
977
514
657
989
409
459
64
515
950
284
323
396
178
748
32
604
452
151
257
944
544
941
641
31
854
244
383
828
957
222
885
959
196
532
374
651
460
126
526
438
40
508
968
312
958
313
138
857
994
143
578
918
11
804
15
250
843
346
260
734
774
808
151
615
645
299
887
218
449
757
974
927
635
90
406
594
999
570
881
828
395
510
624
261
512
566
732
433
522
175
220
742
391
282
989
354
213
633
374
459
219
785
530
986
490
476
704
971
761
112
790
658
937
871
558
210
536
355
722
986
581
370
271
621
510
304
103
737
879
43
567
605
553
755
582
198
586
693
96
365
926
319
987
817
294
829
850
832
528
941
356
286
742
865
856
336
918
767
284
389
235
511
109
501
839
137
506
298
931
306
386
297
670
488
247
539
209
276
309
43
562
860
284
985
516
664
592
644
155
246
588
11
89
718
214
901
143
271
360
489
21
638
757
442
347
276
265
510
854
421
504
560
157
426
842
339
255
934
66
202
349
764
891
734
179
141
322
195
898
923
51
938
722
31
128
987
572
509
31
324
643
915
274
628
661
211
564
12
849
687
253
566
983
129
476
901
774
706
515
332
506
762
428
43
730
370
294
222
387
948
941
751
439
313
698
965
805
661
157
913
296
834
542
843
475
905
945
277
209
448
368
827
429
921
102
664
248
903
375
126
530
351
569
148
717
337
486
981
665
57
380
183
961
871
13
956
619
542
787
381
806
149
925
56
804
353
890
861
90
756
237
655
610
706
576
615
831
91
770
746
479
828
573
870
102
184
972
214
47
730
402
870
939
54
295
955
291
782
582
633
40
929
387
724
858
330
53
194
305
598
804
506
34
532
856
823
189
622
263
979
132
813
977
109
56
769
485
67
204
698
562
324
138
453
465
881
983
344
720
241
867
914
104
681
256
375
884
279
854
598
303
93
970
216
666
711
299
265
755
637
221
325
666
607
792
845
911
49
192
855
720
735
616
409
345
546
233
578
600
966
568
920
487
109
175
728
375
644
289
881
929
461
719
709
717
226
660
101
965
782
646
38
950
825
616
631
464
916
841
573
331
643
307
348
807
261
415
846
269
836
392
683
629
145
210
504
648
715
200
275
199
319
698
46
48
216
125
821
156
335
514
258
365
376
298
777
281
964
455
117
976
925
511
19
757
615
114
611
775
759
163
359
396
621
280
457
164
626
575
597
974
926
574
102
883
445
357
805
339
889
101
902
160
177
116
417
683
24
252
153
460
746
148
998
869
236
790
175
95
671
338
527
413
854
197
81
140
35
557
405
142
439
386
339
336
737
828
491
191
502
827
427
653
192
818
35
690
178
389
322
839
978
75
509
760
379
239
174
156
217
136
323
772
772
810
987
418
733
353
929
253
865
945
496
118
994
189
420
977
949
971
823
240
880
479
878
841
295
980
282
445
694
558
464
911
854
675
911
313
841
508
860
87
392
845
583
772
283
557
696
624
400
214
533
588
459
672
853
812
771
463
882
109
949
843
233
325
538
399
534
435
581
153
732
845
386
627
465
145
801
528
503
947
234
874
916
473
305
975
258
170
67
665
501
582
365
66
780
609
548
425
186
553
671
149
182
688
273
599
841
705
740
494
77
871
90
268
396
897
696
717
385
556
539
696
504
339
673
586
820
156
868
521
902
804
201
600
971
550
303
585
200
788
344
98
474
587
337
179
574
763
445
227
309
625
882
406
204
772
517
10
994
523
20
968
131
306
369
366
623
722
185
730
11
66
471
742
101
462
608
191
970
31
154
820
52
171
683
153
133
102
778
892
606
726
242
171
944
974
634
596
805
409
270
67
444
833
738
253
479
308
247
407
703
400
30
688
296
680
482
986
233
950
905
48
476
76
626
506
712
372
489
161
887
309
472
561
966
81
820
633
779
503
883
559
255
222
168
483
947
716
186
441
161
279
591
856
992
307
371
321
695
542
511
214
837
688
97
981
22
180
113
945
906
343
688
67
219
92
856
47
459
151
863
914
262
148
701
640
715
223
975
60
586
639
653
177
38
577
253
805
99
829
78
921
819
566
799
988
253
711
211
144
82
840
988
389
257
938
664
88
543
962
762
853
324
273
796
211
457
648
543
755
538
319
977
477
522
17
12
644
111
630
549
202
680
837
565
137
975
290
623
592
45
758
211
150
371
640
27
23
585
796
283
808
424
478
832
94
386
20
459
514
137
473
531
899
254
351
335
844
878
188
801
895
582
351
212
128
694
804
293
676
838
440
239
241
940
173
215
909
126
674
256
486
713
818
368
854
296
333
281
451
365
613
464
848
451
661
146
691
599
36
608
864
195
33
106
308
990
995
581
475
756
492
209
996
202
791
586
571
910
924
171
270
868
279
899
709
925
288
486
263
841
882
830
422
878
652
73
591
321
780
710
699
384
979
536
326
568
960
814
944
798
902
249
477
32
215
273
979
662
662
565
411
948
352
964
324
723
357
363
983
686
66
11
30
882
658
584
40
873
655
628
577
464
372
539
990
250
501
322
568
895
846
693
792
710
189
248
831
765
195
544
649
549
624
141
862
426
68
129
739
191
853
656
137
740
574
390
923
866
157
385
432
328
681
74
349
449
440
20
401
989
211
875
597
311
997
313
529
618
904
996
373
347
367
974
347
602
947
251
940
506
170
971
225
984
137
317
21
848
670
329
842
507
23
397
602
731
266
41
214
157
194
695
126
101
509
414
615
823
494
229
681
98
196
151
907
519
33
203
536
675
221
636
19
412
327
557
46
646
492
207
860
245
497
764
95
322
745
119
308
783
574
498
591
46
47
356
11
485
820
106
103
400
232
401
478
325
557
990
566
891
446
788
360
109
529
245
918
771
704
641
493
903
741
713
856
593
56
832
699
602
61
311
62
55
291
774
193
412
148
196
148
470
859
318
941
136
242
971
352
509
185
379
28
795
782
655
11
419
400
886
687
240
776
90
162
238
454
974
634
737
200
861
894
65
969
148
903
924
401
654
855
436
948
852
70
156
249
305
71
939
630
279
269
691
474
198
234
416
37
58
170
959
345
619
738
99
400
923
835
234
200
975
977
705
616
288
284
124
969
757
790
741
80
912
934
545
320
557
355
135
572
778
440
623
283
817
404
60
546
37
979
597
939
200
93
913
889
382
413
383
636
969
920
616
487
408
535
143
488
406
243
637
947
502
46
204
225
300
114
710
720
369
46
356
899
662
957
439
719
964
577
112
945
712
447
772
336
712
981
381
596
256
821
413
476
403
697
567
750
796
713
477
175
195
821
730
93
94
560
314
400
807
74
203
314
842
605
805
804
154
833
625
86
364
944
48
138
304
270
545
912
768
575
813
367
490
115
166
401
217
285
806
715
843
258
56
300
921
807
476
820
136
201
123
635
917
484
580
279
652
142
755
643
877
288
247
229
450
364
392
576
603
779
44
636
70
940
199
616
260
599
981
523
889
213
499
466
87
563
112
616
924
324
138
428
688
604
870
415
604
970
677
437
372
558
639
594
727
727
118
504
409
155
362
511
844
266
892
288
889
891
584
920
758
751
886
53
765
792
827
836
649
257
762
209
129
776
976
255
893
768
683
126
944
566
304
607
902
15
711
673
121
533
607
184
546
694
728
721
840
301
292
660
759
865
537
555
455
703
952
487
180
469
457
771
703
350
762
581
748
166
697
778
363
772
20
985
398
39
593
93
980
634
734
623
897
399
714
576
117
306
262
790
579
640
504
197
419
334
279
555
924
754
29
325
95
243
982
161
322
117
490
49
120
867
80
130
577
624
660
620
541
82
269
570
382
526
959
677
696
487
545
947
45
300
726
248
392
10
369
393
650
494
699
696
19
549
213
918
927
969
167
921
162
648
289
730
344
539
174
228
802
12
323
104
463
161
638
586
724
883
274
542
188
343
190
598
644
352
141
678
227
369
495
311
110
949
750
948
276
295
498
510
292
932
754
564
389
313
946
197
915
656
889
144
308
282
876
435
24
271
566
31
624
149
543
625
512
987
261
957
997
744
498
411
855
773
112
214
50
79
23
735
587
723
241
801
693
959
161
137
779
360
861
724
716
468
717
461
893
959
46
981
585
746
170
465
904
211
585
511
110
68
365
798
694
371
617
722
299
902
157
399
206
409
517
891
847
270
130
128
714
926
973
706
134
264
530
45
448
289
119
804
985
710
585
696
159
536
689
248
390
576
807
941
968
680
712
143
632
66
737
414
910
500
812
779
797
241
254
922
550
659
865
848
958
88
114
582
385
682
404
501
101
831
212
874
630
464
123
712
769
986
936
726
18
548
508
163
228
937
708
86
580
212
20
817
323
534
887
416
831
956
186
361
991
997
472
539
679
373
293
363
899
878
707
346
136
116
485
221
385
197
115
16
684
94
638
658
180
277
854
989
778
507
393
350
126
566
55
781
366
437
609
891
246
164
671
620
622
29
612
880
906
971
850
619
775
413
335
400
260
740
243
896
828
998
591
696
742
850
892
313
517
122
625
978
18
391
930
67
939
690
95
607
113
479
921
765
463
527
119
701
970
948
402
596
343
16
431
540
77
382
79
474
955
333
532
55
285
165
484
281
86
78
182
120
230
739
884
856
738
812
692
840
313
41
221
911
851
521
546
445
123
369
459
970
613
565
373
301
966
120
570
267
664
587
998
187
150
542
670
110
432
646
823
326
558
179
968
972
895
285
208
890
677
732
596
295
15
189
834
113
864
983
745
627
398
717
106
852
670
440
261
65
740
597
404
925
253
772
646
566
715
660
231
734
17
651
34
264
763
717
971
603
11
221
745
815
615
994
771
869
77
28
741
586
345
397
924
798
573
893
407
457
245
812
194
606
454
496
114
979
377
140
667
90
62
695
783
829
543
341
406
858
922
524
346
523
292
937
716
385
872
470
622
439
755
897
992
466
22
863
410
521
554
100
782
375
122
611
911
403
875
766
696
475
288
157
736
900
958
638
736
586
149
287
916
44
210
429
266
610
623
639
347
162
222
453
810
645
639
173
949
865
470
192
553
114
518
916
248
980
996
809
382
488
716
535
211
822
390
99
346
254
784
873
26
106
425
13
274
532
735
464
757
401
287
219
832
330
606
99
899
369
360
173
313
147
403
205
421
897
216
339
353
297
600
725
25
981
666
329
84
543
790
983
316
496
227
624
916
552
139
538
580
189
357
326
176
959
920
827
195
819
663
839
706
393
521
234
696
920
473
575
700
129
164
997
258
924
886
305
862
203
519
834
88
577
781
434
481
614
25
644
844
575
25
356
788
535
151
777
447
424
370
22
988
531
793
684
441
397
135
462
412
992
228
787
982
377
969
376
634
760
866
418
827
817
889
235
537
582
465
710
857
216
457
171
281
745
954
871
927
667
914
533
217
973
910
480
329
725
592
360
578
77
246
191
407
743
858
376
30
789
133
559
16
827
115
92
10
62
730
945
827
143
71
299
735
613
748
688
949
845
251
848
336
926
272
647
288
873
836
270
66
452
168
124
638
880
79
771
945
453
859
156
908
535
253
612
470
585
810
901
50
58
40
703
642
685
579
125
275
500
313
269
695
672
979
671
599
461
373
972
340
825
971
793
633
440
256
193
212
608
858
60
445
909
845
961
745
534
157
329
259
721
875
666
821
536
28
350
754
221
406
532
208
143
227
989
819
870
361
646
304
397
196
696
764
126
162
879
457
382
10
209
797
142
614
242
468
817
270
625
752
345
999
330
792
130
632
632
212
260
612
863
57
611
519
71
713
728
611
605
186
195
259
194
790
925
289
556
252
132
665
674
571
655
668
445
502
386
921
533
187
389
163
551
84
26
614
736
229
350
114
173
567
829
452
264
919
490
147
458
493
446
190
873
163
114
661
514
456
201
168
390
325
411
714
216
474
65
180
431
423
465
748
402
577
90
442
782
767
709
494
250
495
956
152
290
105
518
510
115
476
47
81
844
865
305
244
252
26
320
649
688
128
557
232
51
571
615
79
285
116
620
631
924
515
157
85
536
750
684
913
601
714
164
258
344
284
968
775
647
859
303
877
819
849
401
496
191
580
101
448
100
736
846
565
728
574
717
515
512
190
241
621
262
373
189
711
612
867
328
22
15
38
392
54
846
978
616
414
512
880
552
414
24
930
413
713
572
301
177
656
130
112
65
191
400
390
847
655
439
540
375
622
543
71
582
256
822
728
158
463
50
441
811
265
763
997
591
551
44
326
740
141
362
284
577
872
213
845
490
978
148
199
195
538
315
835
808
793
39
815
337
928
18
397
876
270
646
666
132
217
230
949
544
782
240
377
487
855
645
755
384
891
832
328
484
937
501
706
144
558
78
69
973
546
823
503
35
500
72
157
139
625
570
292
146
585
947
602
366
793
428
730
519
517
629
519
317
312
204
881
206
271
616
741
373
642
775
399
693
995
634
174
328
887
945
448
696
469
687
823
58
514
30
945
774
648
154
474
990
226
350
136
592
345
298
285
288
741
910
631
376
415
179
331
195
869
191
135
543
508
598
800
222
989
98
119
992
522
726
217
770
437
250
565
143
818
699
170
491
101
66
209
292
139
348
205
795
195
651
584
244
773
995
694
618
929
69
754
998
288
492
485
185
118
758
583
228
547
806
16
317
991
684
247
23
710
259
229
415
325
599
703
65
420
643
975
635
127
412
548
894
638
636
31
785
863
14
152
836
836
804
435
894
453
885
651
249
873
561
504
884
728
218
326
993
92
512
996
580
693
974
849
160
924
887
793
221
76
524
864
708
441
469
483
590
307
988
692
196
361
263
795
688
621
782
972
924
276
80
540
814
456
79
146
386
272
466
526
65
189
61
147
729
774
415
549
858
792
114
291
212
206
546
27
185
399
657
418
309
841
15
485
155
216
467
83
57
81
501
616
792
286
784
407
263
75
168
241
499
810
871
305
228
390
62
202
933
34
419
387
139
602
751
13
686
260
101
585
148
53
874
849
266
609
693
687
849
336
289
478
103
694
908
533
591
506
97
750
842
420
865
794
661
378
214
149
710
97
524
538
878
69
96
664
827
39
408
74
225
823
74
945
991
96
928
436
190
735
148
331
593
685
251
882
623
65
875
561
477
331
659
856
605
549
543
464
943
747
752
812
21
63
158
504
702
272
983
78
343
724
293
881
30
376
102
790
717
193
608
770
716
246
707
415
674
16
621
765
733
579
391
558
679
273
302
185
179
100
528
973
63
397
552
983
683
505
372
383
400
508
38
448
470
193
345
932
500
400
780
850
864
729
119
972
393
78
133
423
782
703
514
212
251
142
783
323
387
929
969
40
367
546
928
647
156
126
656
888
925
973
242
596
631
189
473
291
410
714
670
12
647
170
588
482
470
526
38
581
998
974
404
373
947
180
200
676
365
29
826
395
343
271
539
435
175
319
779
611
784
830
235
872
132
717
592
659
46
29
781
128
355
938
742
602
399
103
60
834
831
296
226
95
221
773
817
68
301
388
199
877
808
459
479
148
518
225
31
486
648
183
837
552
916
56
149
575
51
53
311
204
685
769
978
985
507
544
60
513
76
321
340
155
192
43
197
646
125
404
48
739
253
394
435
124
115
787
247
190
97
827
640
314
407
433
103
391
359
532
350
604
579
310
265
85
135
605
755
763
933
617
209
896
307
443
581
885
952
371
189
841
908
174
821
588
136
709
992
769
763
901
442
444
375
223
660
428
753
539
968
991
875
852
618
708
845
150
696
187
836
572
939
872
599
350
883
925
716
655
238
586
975
395
793
991
406
248
930
256
205
267
488
967
184
197
991
708
946
427
356
972
887
132
469
743
943
152
729
968
451
390
681
579
209
282
175
285
717
346
628
506
108
358
844
371
210
239
970
453
957
128
157
124
651
803
153
266
455
130
68
718
383
556
943
814
735
620
62
895
278
913
105
976
742
126
922
110
847
811
340
587
91
328
198
405
698
251
141
690
616
152
988
328
862
939
572
881
746
12
809
199
116
692
536
887
392
440
557
798
152
348
210
635
976
993
101
597
129
525
739
45
63
815
323
313
599
289
989
835
469
106
357
433
322
94
926
568
610
899
441
238
268
269
454
262
437
721
841
655
336
182
789
400
227
239
326
123
135
302
160
237
360
396
106
151
878
356
635
686
51
988
661
565
641
810
949
978
549
153
178
493
785
572
387
629
908
380
210
482
841
685
490
255
965
843
834
638
128
968
345
966
811
763
203
94
662
488
38
943
918
287
533
507
590
861
127
397
634
586
729
536
877
399
977
814
189
325
613
878
109
260
514
80
487
445
803
91
798
882
311
830
834
833
288
427
190
715
336
702
564
112
948
219
420
574
190
662
519
582
631
40
453
508
216
237
753
556
493
151
911
915
881
745
621
112
374
59
635
480
977
691
687
25
652
800
66
70
378
834
891
249
864
821
143
149
370
912
513
60
673
188
579
202
586
351
742
52
873
861
437
149
283
170
352
711
519
694
795
552
642
971
599
644
747
464
858
423
881
488
763
466
903
976
988
31
645
151
97
647
322
326
673
263
456
409
843
352
660
313
44
190
775
311
638
831
908
21
811
887
892
458
474
566
171
275
770
905
157
416
827
468
906
143
107
294
389
752
930
437
383
972
443
572
584
228
666
981
825
754
76
736
762
103
942
371
914
947
399
784
669
395
888
669
804
988
707
68
471
831
196
187
637
52
548
740
471
602
499
356
701
393
980
647
444
539
176
56
322
21
193
146
373
922
874
761
795
521
904
554
480
447
370
515
957
217
635
277
138
589
721
157
124
435
812
225
420
195
954
653
613
533
102
977
715
103
342
831
264
524
286
148
894
797
520
787
851
809
187
674
750
551
707
335
725
953
77
299
582
947
226
610
390
193
157
178
863
299
131
735
417
854
315
933
810
821
32
834
558
845
675
491
979
801
941
103
217
176
810
641
94
980
934
335
665
228
418
661
366
570
587
45
331
226
170
496
286
823
217
534
146
86
423
297
978
773
324
386
478
366
71
886
176
222
946
161
751
60
593
27
610
11
165
472
830
354
279
941
116
736
177
570
239
320
398
70
987
152
391
694
321
708
561
831
316
328
265
684
47
757
178
577
27
613
77
492
663
968
68
298
759
784
882
170
372
321
714
109
589
28
204
587
962
29
497
243
15
899
955
921
978
720
781
525
847
581
71
259
454
704
438
720
285
741
130
843
908
492
581
898
25
773
136
516
409
872
270
866
721
271
751
962
586
504
474
52
37
219
160
510
169
522
79
87
229
918
293
637
537
128
257
138
818
732
422
791
456
272
668
845
584
162
64
630
905
154
452
385
512
980
430
729
501
983
997
589
134
143
312
453
906
733
615
599
749
790
106
556
613
182
581
968
30
827
89
614
50
766
961
371
672
752
449
928
997
558
64
789
285
612
585
788
992
898
618
736
14
375
946
900
646
373
440
515
836
304
957
529
421
13
189
543
209
26
638
592
443
513
927
780
239
215
879
387
154
989
658
458
782
409
534
153
462
68
266
651
983
805
649
777
429
799
341
902
925
556
577
174
518
333
83
448
417
353
539
373
711
305
328
809
537
288
750
437
577
588
641
220
195
422
70
96
521
697
55
140
331
228
719
283
18
398
821
136
315
759
328
237
519
233
459
364
521
847
574
670
977
954
490
371
578
396
696
162
402
347
564
248
760
403
224
385
755
401
612
20
127
141
905
163
416
271
322
953
633
418
532
734
355
782
233
142
32
860
553
244
571
807
931
981
970
562
890
850
962
722
663
856
263
212
253
463
953
214
645
985
535
444
269
217
338
78
473
24
461
109
585
772
13
999
631
591
562
843
998
942
410
817
624
722
766
98
623
69
679
811
403
17
846
415
686
180
399
911
458
247
439
578
98
764
255
78
740
538
967
200
266
535
815
391
662
391
446
172
488
730
350
398
21
278
306
580
405
998
234
955
603
794
500
600
918
931
675
863
843
65
641
477
442
584
822
192
750
252
776
100
365
741
712
889
332
913
909
483
133
205
702
204
429
651
167
919
242
683
267
346
253
186
676
508
846
38
127
651
987
538
584
610
914
268
959
682
288
655
771
666
182
370
844
376
269
225
991
247
848
361
618
507
352
138
508
575
725
596
956
779
72
306
767
298
44
207
181
228
318
308
356
663
453
550
332
997
573
634
979
740
933
278
257
413
445
213
687
609
471
146
789
851
957
216
548
411
710
944
15
379
279
886
190
365
810
570
644
13
186
185
313
320
937
115
627
206
26
412
761
38
709
481
450
845
291
889
489
923
618
527
826
429
572
375
63
886
247
768
475
349
119
194
381
205
509
387
975
893
96
666
646
814
557
856
44
654
325
774
313
65
266
321
56
172
875
376
503
182
295
285
435
546
124
40
604
551
686
484
813
468
631
795
513
424
123
12
998
977
459
72
401
367
722
57
303
260
940
788
395
705
225
818
160
783
563
34
663
765
572
509
898
991
42
761
261
187
654
408
960
516
411
302
93
724
946
807
531
108
302
934
744
853
514
881
903
482
88
143
729
407
707
282
915
720
749
362
230
776
790
563
346
629
129
738
537
906
283
187
668
985
79
544
964
785
598
995
253
735
75
95
967
645
196
65
593
167
437
473
85
648
532
338
644
716
864
805
298
867
925
202
611
396
869
501
494
138
669
994
475
212
51
838
849
490
469
849
701
503
371
648
383
656
543
530
943
544
350
412
474
990
757
655
562
999
95
473
619
740
820
425
466
929
659
50
174
615
596
15
374
20
399
509
567
333
646
524
205
477
962
551
687
619
187
251
577
321
356
401
729
401
453
819
470
883
751
626
909
104
53
992
799
595
752
843
261
837
153
731
611
367
70
38
437
579
271
53
884
521
456
841
330
656
752
722
905
735
679
340
400
568
378
802
521
747
292
903
810
791
347
89
609
342
870
75
964
743
729
468
626
380
827
730
732
245
23
645
475
947
320
525
869
638
706
956
449
893
162
912
875
313
527
388
643
306
510
208
30
508
258
80
872
574
385
260
153
472
57
690
258
503
669
406
928
942
545
232
198
566
460
862
540
884
323
148
294
831
688
206
243
44
867
148
801
271
293
962
937
510
940
106
865
802
37
179
513
838
647
124
873
196
588
812
199
31
226
632
289
330
45
501
991
126
958
963
203
28
10
500
680
372
682
695
448
311
75
135
743
13
86
605
945
973
199
957
117
823
523
326
330
479
137
112
93
701
405
68
822
52
549
604
442
26
220
107
215
69
383
632
738
885
457
338
621
448
201
992
114
749
433
689
791
467
700
525
410
996
200
567
105
870
452
590
872
85
941
315
185
413
590
647
82
242
143
272
294
718
345
50
389
205
81
756
712
149
952
334
367
210
935
893
875
191
120
357
850
770
919
701
746
75
124
641
302
74
508
637
448
469
311
169
825
878
424
494
719
124
697
302
447
539
253
950
538
306
468
522
198
876
351
296
875
651
442
865
573
321
665
65
457
519
89
478
595
205
801
761
349
977
416
160
897
17
845
123
509
554
42
88
370
793
70
495
842
563
796
686
645
412
175
552
461
987
605
541
35
958
129
79
727
713
772
416
237
243
69
114
495
386
757
349
983
608
428
790
855
179
710
413
156
318
981
920
101
656
568
756
862
652
334
680
437
825
569
201
606
348
983
285
747
333
834
767
807
561
424
929
626
95
418
264
786
23
961
929
939
539
515
206
830
463
64
191
648
310
961
440
311
876
96
196
921
631
85
919
499
828
530
514
259
496
634
978
64
670
777
235
408
526
450
867
471
312
887
501
280
869
964
509
923
31
707
524
228
415
534
35
997
674
464
961
273
860
735
93
968
322
488
811
202
381
702
129
13
652
774
494
414
325
124
16
294
106
700
729
20
318
51
252
965
776
655
483
330
341
105
356
774
634
735
897
440
26
343
624
220
472
311
458
268
353
494
323
327
32
94
657
841
886
69
101
46
280
504
991
556
641
123
51
606
457
70
531
398
901
423
288
131
775
133
50
192
695
616
818
282
368
434
965
371
850
649
42
727
989
351
474
937
766
417
211
914
939
509
353
818
876
300
459
803
403
383
827
454
468
913
194
880
126
287
354
549
986
995
883
700
493
881
683
155
406
332
710
721
747
643
647
410
121
814
811
793
78
375
213
272
617
985
114
331
364
546
158
549
983
298
273
609
809
938
401
20
610
677
72
741
427
850
871
316
862
809
268
387
29
419
445
18
238
95
488
253
829
981
296
617
339
711
773
407
27
119
113
215
67
997
647
307
452
438
299
125
237
215
124
472
40
960
640
263
699
841
993
184
27
331
725
282
490
934
968
752
13
56
905
730
846
391
556
650
327
744
256
993
309
579
242
109
306
661
120
257
690
906
285
133
289
440
996
458
41
768
905
718
401
521
562
868
256
494
516
732
590
726
915
782
271
70
78
470
904
986
814
956
969
857
51
842
201
184
310
741
387
973
886
377
615
643
19
898
154
399
339
376
984
459
788
724
682
944
328
716
697
654
524
890
907
533
889
462
723
737
285
860
355
635
128
652
321
408
544
456
262
606
976
704
870
165
105
507
620
136
263
717
441
417
590
772
27
613
444
59
213
880
463
66
764
250
753
937
537
159
382
19
841
290
326
278
322
751
771
454
618
92
980
243
433
702
849
173
808
515
617
129
244
362
236
197
773
298
469
758
712
267
100
386
889
170
73
651
85
453
718
454
760
295
88
167
306
837
680
122
589
867
595
361
94
137
10
406
510
138
267
868
428
896
891
266
372
395
451
325
176
25
150
506
761
553
597
731
348
744
186
629
682
763
638
434
483
126
120
346
740
753
552
947
489
707
367
711
430
726
276
91
919
410
502
386
487
768
297
134
529
264
851
817
357
306
58
190
413
981
685
259
20
65
205
94
206
564
418
413
597
67
562
416
365
114
374
110
291
890
32
269
330
509
475
640
408
754
811
908
373
121
785
911
449
321
565
839
576
569
532
678
573
427
706
819
796
564
332
853
279
960
176
659
266
457
624
226
35
828
881
270
871
387
25
522
505
495
427
900
347
836
42
651
869
683
66
397
345
902
456
374
404
95
665
504
390
70
24
921
840
280
870
60
673
757
572
814
351
480
744
543
975
596
88
951
336
563
695
598
94
335
728
570
876
80
303
841
912
390
31
279
355
328
730
189
259
691
106
412
598
571
310
802
295
957
873
602
384
150
38
77
583
220
241
260
852
376
674
170
623
359
998
620
340
535
473
85
798
159
722
167
533
210
810
721
337
386
272
135
926
93
897
853
807
329
943
807
448
850
153
609
402
605
898
417
33
936
87
389
221
847
52
471
369
12
281
137
121
688
704
579
150
396
935
923
390
586
696
113
376
18
519
743
926
815
813
150
464
582
565
473
273
439
586
493
67
529
222
218
985
484
362
718
907
969
596
439
194
218
258
668
907
655
531
165
451
730
270
109
432
369
68
875
91
27
376
332
355
515
15
590
713
436
893
899
414
340
765
577
307
558
788
821
328
127
69
445
389
529
503
977
270
346
230
284
673
784
900
699
587
790
96
334
830
631
80
42
992
126
953
393
417
590
286
804
702
864
36
959
140
27
956
780
168
551
519
410
897
10
701
990
964
597
429
89
942
680
596
343
43
770
63
313
302
610
29
183
744
969
133
810
335
495
885
701
509
463
157
42
71
694
421
555
537
503
291
603
447
343
27
311
907
786
402
632
72
789
361
368
491
119
757
815
469
52
75
226
356
668
989
809
98
340
325
174
690
46
663
763
201
205
52
399
626
365
866
354
472
885
649
959
476
189
22
470
858
985
759
684
44
139
689
441
293
680
184
620
422
67
54
583
240
731
277
798
358
77
161
461
744
546
882
472
865
883
53
155
987
918
471
846
663
981
447
97
805
34
219
665
481
36
339
781
339
393
795
667
105
482
545
426
891
567
579
337
995
965
31
305
692
271
164
50
394
999
283
887
133
287
947
120
124
912
935
242
72
620
350
428
996
825
311
39
894
859
268
436
461
977
978
726
828
293
376
987
88
720
66
200
878
205
19
713
656
506
414
666
402
282
702
304
706
163
538
518
793
129
322
221
199
981
398
83
424
955
143
494
774
142
713
931
667
514
732
709
124
543
982
626
221
202
364
960
52
932
557
489
966
695
953
987
31
238
249
638
305
631
311
90
127
100
481
543
839
968
127
335
278
776
320
925
225
62
525
569
827
252
741
248
885
755
474
179
877
822
514
854
816
300
93
795
616
655
259
614
183
905
813
72
603
207
929
821
456
931
407
913
772
499
66
652
645
171
661
629
202
344
991
974
850
123
26
733
492
503
48
433
812
263
197
398
116
307
321
57
175
967
952
949
441
326
729
356
556
278
69
783
678
624
938
146
424
469
627
302
523
488
204
94
164
218
763
463
26
325
550
880
214
123
877
857
504
998
220
15
761
452
302
916
401
735
543
610
206
113
300
393
272
569
168
302
320
405
204
761
16
691
634
552
641
489
454
734
748
515
438
216
292
704
919
311
330
349
394
639
79
819
322
298
843
488
120
635
527
26
563
698
886
930
676
921
716
348
467
560
508
759
747
29
720
322
188
745
160
624
39
596
619
293
680
714
935
222
524
33
42
610
669
866
849
62
350
728
236
324
506
957
579
369
102
857
988
219
669
282
462
119
991
776
442
799
962
300
380
223
59
151
185
699
134
151
269
133
146
133
780
590
103
377
546
76
240
418
327
706
458
897
783
867
631
130
778
458
28
375
724
604
159
914
521
614
13
220
366
838
128
313
542
634
854
713
860
719
993
494
645
306
339
535
835
252
510
642
580
790
21
283
514
113
783
139
597
694
795
752
604
787
446
472
327
985
314
590
55
505
201
792
590
664
246
842
316
138
608
232
553
645
241
504
833
705
309
501
386
407
791
319
480
222
829
933
280
377
494
812
443
183
818
759
704
267
358
416
464
855
833
299
517
802
256
268
57
342
429
524
496
802
68
111
589
974
188
163
315
28
516
131
387
622
184
246
308
101
402
822
79
398
34
478
433
372
944
636
698
937
783
14
205
222
951
663
946
317
42
172
54
631
460
954
836
465
263
453
903
567
215
800
829
656
929
774
94
229
494
442
987
828
700
82
750
384
647
759
442
128
122
84
743
632
268
700
649
89
239
976
909
598
198
952
118
599
52
554
762
697
701
165
434
334
158
841
544
354
244
815
698
57
756
250
772
244
366
541
792
623
684
540
891
675
196
282
430
604
76
180
567
148
962
545
695
830
856
334
958
713
814
786
359
62
711
284
468
407
89
425
367
443
624
502
828
377
508
610
80
268
995
182
184
187
276
146
198
828
972
699
298
901
310
98
148
746
781
369
642
582
114
677
921
341
508
495
205
575
24
625
406
686
110
329
631
829
342
361
604
283
777
408
353
720
428
872
683
137
664
134
98
243
870
298
536
266
679
779
90
80
545
769
424
177
241
338
966
201
83
829
794
556
162
112
930
494
233
716
458
315
690
347
704
16
387
277
978
762
287
639
691
819
256
772
155
463
167
293
827
653
169
631
470
380
142
516
223
178
869
412
939
116
129
174
911
934
890
910
509
233
174
563
516
993
679
141
612
373
280
551
162
462
641
270
170
126
140
615
994
323
208
607
413
732
633
111
100
200
206
863
426
99
17
401
881
533
218
539
221
96
105
500
619
628
89
677
299
633
915
190
163
546
403
717
566
407
289
98
233
577
162
396
692
10
435
453
967
301
349
387
852
703
332
820
187
659
704
975
249
816
562
492
40
588
840
261
42
907
718
901
830
509
663
158
730
316
502
171
985
871
933
797
147
316
13
427
210
643
664
374
353
835
948
212
591
832
683
690
37
14
677
900
487
242
107
780
309
185
899
431
300
874
398
820
199
168
563
12
273
181
968
251
435
448
781
516
299
647
292
875
887
57
458
88
243
557
631
643
415
420
52
901
244
702
104
705
960
823
730
341
135
807
666
109
234
711
613
733
528
500
246
331
786
957
219
267
574
518
521
726
390
716
316
976
112
956
952
528
397
359
111
555
960
392
898
646
493
21
201
738
660
222
210
597
699
346
132
905
837
690
920
490
700
784
70
109
477
441
601
102
526
953
822
611
174
671
620
173
984
635
606
310
895
698
156
707
704
424
782
95
625
274
365
914
683
492
926
272
915
679
925
967
802
307
351
905
798
805
63
137
970
741
828
726
667
995
590
176
533
134
770
166
906
979
459
775
174
944
733
723
838
692
311
230
388
778
370
313
498
147
945
884
474
363
71
442
701
493
676
955
196
404
183
380
507
787
931
578
954
817
519
18
231
496
862
471
304
425
290
984
208
926
246
848
394
979
73
866
553
77
867
337
435
348
680
755
136
912
332
148
556
840
198
918
726
36
37
530
28
499
510
222
42
564
452
589
83
235
453
439
260
873
721
947
62
993
619
236
899
541
695
571
772
323
437
336
633
89
889
653
252
66
64
515
850
937
808
792
118
800
665
376
38
216
927
465
594
956
852
792
645
150
389
212
403
828
544
653
822
851
121
211
382
143
975
854
338
460
212
673
10
683
200
748
489
596
887
442
376
801
420
975
459
180
381
78
309
867
510
153
60
473
110
91
452
826
814
49
784
280
362
543
671
351
231
372
569
584
772
495
287
981
997
230
780
825
512
117
185
311
330
542
368
884
149
552
532
294
303
442
613
270
625
394
359
669
974
534
454
471
919
628
63
241
684
514
681
991
74
985
583
809
252
981
748
555
365
556
45
497
418
830
746
591
258
736
923
642
296
18
112
257
562
744
19
649
990
818
916
161
274
883
976
420
651
143
388
920
392
910
262
64
822
793
96
296
478
637
647
50
353
333
599
620
534
237
83
476
927
852
152
860
684
211
440
103
815
97
490
89
846
82
975
43
48
620
915
668
999
519
162
355
27
68
617
663
813
410
982
143
678
676
392
760
960
612
687
395
307
662
731
996
840
695
297
480
648
692
358
366
232
386
226
976
312
882
311
731
613
68
483
977
538
418
38
840
101
193
306
895
879
389
633
49
419
317
607
315
857
734
531
365
183
734
837
624
560
184
571
601
700
106
12
506
92
893
782
151
168
754
750
264
802
374
830
60
443
675
946
797
915
187
581
707
375
605
617
251
665
633
42
85
973
893
595
902
973
17
283
924
265
524
219
842
616
116
865
943
914
749
319
656
112
846
447
247
750
515
224
324
580
26
898
189
911
401
195
518
237
785
563
800
123
182
794
62
792
641
865
623
941
489
321
817
614
786
271
799
711
881
757
315
940
109
118
459
771
486
818
14
98
376
17
399
173
686
880
173
776
768
791
841
267
892
731
28
814
907
536
639
556
399
55
662
408
85
996
659
125
230
382
661
622
270
888
284
572
108
807
192
679
985
311
919
425
884
989
229
476
438
709
958
705
22
836
122
251
444
711
164
634
497
860
907
841
983
616
105
167
62
121
558
360
864
778
342
544
792
233
972
193
881
36
385
966
120
302
497
35
10
595
517
141
852
69
463
19
873
172
206
136
272
626
557
273
894
170
457
752
319
735
141
228
616
992
93
132
667
208
385
915
124
443
213
269
176
861
782
982
995
309
721
398
629
886
575
725
368
713
529
731
265
902
764
175
69
191
80
731
489
105
663
856
617
584
605
874
102
598
40
523
221
185
445
341
880
67
863
942
39
770
768
547
220
147
418
309
76
866
990
46
332
901
743
766
898
500
294
67
498
116
168
19
707
572
487
131
108
663
133
503
668
301
893
100
213
941
687
396
741
965
13
912
147
789
320
956
883
80
119
70
227
63
876
275
271
931
272
371
517
507
919
178
970
33
933
129
178
275
485
345
468
403
81
902
845
569
333
731
530
541
473
983
851
67
132
653
711
25
720
920
102
936
933
837
622
350
403
906
369
645
719
912
193
552
823
161
34
917
148
606
444
894
264
694
858
895
587
884
720
132
596
106
573
447
141
218
576
487
737
446
921
593
449
15
228
892
496
228
98
817
941
386
896
785
774
505
105
201
916
885
706
978
556
262
853
893
589
437
34
546
164
74
261
497
538
165
781
151
888
994
905
959
915
502
529
422
962
503
545
430
46
710
661
278
254
479
127
910
620
224
12
971
235
411
97
133
807
942
226
289
738
295
180
168
181
440
916
189
118
851
910
453
561
226
384
952
547
845
329
857
569
362
976
332
264
86
419
473
746
117
453
267
481
974
750
93
102
701
228
541
982
431
257
424
319
127
738
967
616
629
594
418
834
323
150
353
381
122
676
154
984
946
314
340
537
651
71
538
916
534
353
867
232
933
29
777
934
250
214
720
891
500
701
350
843
69
423
694
862
142
121
24
253
559
34
567
651
480
720
532
168
762
478
895
939
529
922
451
876
222
605
436
731
351
176
648
646
642
926
338
540
124
110
400
912
22
841
790
715
172
30
426
259
563
240
165
427
614
660
95
132
643
317
367
464
903
331
306
996
630
176
699
568
495
405
496
56
198
191
870
501
503
934
468
628
426
949
795
908
92
64
514
370
303
327
465
752
904
606
848
972
879
619
497
792
424
883
854
200
755
714
141
249
843
135
181
881
129
863
950
748
573
832
186
197
118
725
587
505
444
42
938
346
753
609
890
560
402
59
25
99
571
309
594
566
731
52
468
709
249
835
555
153
158
591
125
855
482
674
67
749
392
333
356
683
527
49
368
850
202
917
416
467
431
926
612
897
337
843
618
121
658
166
138
444
514
200
670
873
122
37
387
884
869
663
904
90
414
359
671
798
666
207
782
451
992
286
346
941
924
557
535
198
857
254
550
182
14
729
330
601
251
77
532
407
422
847
794
439
363
998
844
49
243
476
188
512
297
71
431
937
32
524
934
931
256
189
376
671
398
337
838
397
102
358
656
73
180
342
71
786
216
647
877
879
340
878
681
324
744
485
955
832
488
444
810
233
639
733
754
430
777
505
523
954
806
363
421
942
608
737
448
516
178
602
610
247
71
547
876
976
220
32
107
535
333
707
373
894
51
145
408
169
833
500
625
82
216
700
500
439
727
163
807
938
455
212
250
398
835
863
888
842
824
936
772
76
476
130
966
434
78
316
952
484
672
546
339
894
768
849
124
230
288
454
801
867
736
708
735
576
225
180
351
298
127
334
332
920
411
167
54
582
266
688
165
135
540
454
369
473
644
959
392
115
685
514
772
403
413
953
98
750
152
674
633
435
571
111
825
463
503
157
167
656
739
165
677
280
450
368
768
740
753
808
471
759
684
747
974
135
104
171
521
581
152
116
93
949
597
634
934
793
147
535
837
14
285
598
531
992
731
157
408
36
287
953
843
694
534
24
58
890
904
145
391
236
393
339
625
389
270
446
142
173
432
211
222
728
76
746
149
552
320
384
688
61
150
946
488
195
441
372
848
260
122
268
309
496
286
890
839
270
54
997
898
969
708
539
597
135
286
913
684
660
446
457
136
731
786
37
643
994
784
78
834
170
782
157
921
449
510
89
703
578
767
849
749
339
378
207
525
411
860
425
10
416
701
205
554
366
629
863
171
747
919
33
992
701
366
72
856
851
570
766
447
21
125
353
913
829
990
349
604
566
938
732
128
979
933
604
90
315
939
174
245
631
761
987
865
601
224
950
671
954
891
577
208
342
374
266
373
979
153
600
779
904
371
167
539
725
741
723
160
259
426
114
255
53
204
400
72
545
803
810
513
186
213
631
443
213
109
619
174
120
899
680
61
188
474
870
111
492
435
938
526
385
122
418
947
872
203
135
406
129
66
314
454
248
686
778
114
826
966
619
263
825
771
538
114
719
10
133
486
853
394
450
379
209
273
847
892
870
192
115
863
685
792
990
575
427
524
291
645
651
66
334
401
431
375
217
361
16
252
242
243
412
332
862
786
787
782
999
219
289
391
473
627
32
721
982
480
85
631
545
182
751
722
154
834
262
45
630
844
180
828
206
164
582
707
41
969
537
971
790
784
177
405
737
805
922
730
248
544
669
359
258
608
720
549
925
305
294
439
683
552
767
318
993
511
70
869
710
635
735
602
923
300
326
44
794
329
16
991
191
369
324
21
437
508
437
857
61
144
350
441
836
533
679
68
64
120
360
598
349
138
750
24
263
270
273
329
56
980
721
340
531
431
320
40
101
549
303
736
294
264
214
644
142
328
956
849
57
337
263
906
511
136
892
613
409
652
618
723
606
150
637
795
707
91
978
293
35
600
897
713
43
509
387
993
843
458
987
478
645
83
870
573
389
265
628
183
261
512
33
222
834
636
539
785
28
262
876
223
374
480
626
737
681
768
743
479
953
265
516
336
482
206
508
56
568
215
759
908
616
548
23
540
187
597
836
359
73
657
987
865
276
168
244
534
552
57
264
669
963
688
519
422
868
641
845
441
730
962
818
992
789
917
133
449
756
841
386
730
826
108
767
310
246
322
360
985
435
37
599
891
690
762
696
394
386
114
319
276
98
650
610
176
289
710
364
545
575
424
363
551
741
65
416
577
309
692
753
283
451
31
886
75
713
453
297
471
201
902
735
721
560
306
372
545
204
865
479
542
346
98
333
733
321
224
814
919
346
177
792
277
631
673
526
668
416
962
554
503
634
719
942
174
12
206
92
854
72
560
413
274
412
147
630
315
840
685
605
460
217
894
473
534
947
307
274
450
462
515
660
295
104
320
692
504
742
604
298
641
172
567
123
48
295
157
758
44
482
375
695
380
536
308
271
684
470
974
366
566
295
792
10
257
821
733
577
982
887
993
485
500
744
579
375
876
381
759
977
343
531
545
939
426
596
936
95
82
695
213
297
63
706
989
392
194
299
16
648
552
599
499
639
492
83
956
227
294
322
925
601
328
144
203
936
801
671
509
457
459
978
865
510
857
709
72
56
90
668
564
180
146
222
785
701
606
620
179
200
852
326
590
767
335
795
581
327
734
965
262
947
290
499
415
842
791
921
93
991
730
294
415
458
981
70
888
214
531
185
993
966
655
93
809
848
747
869
249
149
440
203
673
291
769
379
301
393
376
601
401
641
712
423
556
748
465
185
203
751
876
286
729
518
171
232
834
48
349
13
245
95
873
410
177
71
406
370
154
838
459
761
135
615
202
118
813
905
346
265
860
751
870
556
286
120
716
647
306
623
195
69
166
483
457
60
557
596
619
391
102
566
818
297
443
372
46
633
775
156
729
591
36
279
416
309
61
80
92
316
219
461
772
622
364
293
416
375
994
175
691
678
610
936
882
602
472
939
526
708
887
592
615
821
651
17
74
743
741
456
372
630
306
559
242
440
354
647
739
203
901
141
713
644
341
627
294
39
278
181
476
731
628
988
504
113
550
979
916
646
136
867
762
829
439
806
149
804
912
693
517
224
858
805
389
642
451
459
546
866
449
791
956
865
394
776
235
387
412
628
843
463
275
18
451
738
95
844
952
708
113
36
189
764
247
900
746
356
393
930
337
403
659
846
852
62
878
644
84
194
995
965
486
620
220
118
177
349
724
235
610
933
717
859
632
227
29
490
968
129
832
892
746
680
354
235
378
323
950
922
904
422
179
384
210
700
873
360
230
40
677
604
882
45
400
691
653
769
127
161
849
778
962
380
967
530
447
241
84
770
858
524
531
185
836
157
17
615
20
228
310
973
409
423
175
369
968
196
696
405
956
152
951
33
255
770
903
505
982
393
644
687
200
515
961
354
210
96
900
235
779
381
231
926
709
745
388
900
547
180
273
460
602
18
24
267
282
834
30
54
797
949
737
181
180
411
465
433
77
512
301
415
671
938
393
951
897
761
678
258
428
692
781
54
483
862
464
632
292
420
471
355
975
253
314
582
255
375
750
624
346
467
119
584
533
933
248
133
176
122
301
67
690
463
397
633
336
690
759
582
992
425
742
52
889
74
369
542
178
840
56
574
474
128
731
699
525
657
658
560
970
643
154
511
833
886
662
997
38
859
258
459
597
272
600
882
137
408
422
558
63
610
897
774
796
865
375
82
960
369
294
475
570
916
889
111
843
813
82
830
968
440
304
906
304
896
449
589
870
574
455
24
227
307
522
376
948
351
848
72
184
179
493
748
797
402
112
738
793
664
22
909
493
830
893
151
358
994
995
464
690
368
498
969
931
962
762
155
990
370
642
399
659
343
294
487
263
682
267
633
300
415
151
863
931
433
975
809
266
741
252
40
307
946
81
761
733
211
872
551
495
272
349
442
799
157
503
191
122
435
938
333
660
312
695
880
142
544
921
163
693
195
908
648
52
993
718
420
102
561
358
130
315
541
523
680
789
986
715
615
866
571
566
512
347
206
527
699
120
515
815
820
961
961
418
89
692
900
243
511
499
674
503
699
751
129
89
927
21
932
761
552
780
349
744
826
51
543
897
176
863
838
261
525
818
196
175
760
740
789
765
205
396
26
785
500
663
71
569
396
427
774
447
427
802
347
551
870
532
614
219
291
435
756
354
288
520
36
312
100
487
25
310
530
275
859
230
142
204
365
821
901
160
235
303
813
444
311
639
874
902
232
373
657
898
245
711
238
903
945
238
269
546
863
947
957
901
829
936
477
469
538
667
79
166
139
188
93
489
42
988
456
89
635
969
853
718
238
356
275
981
533
584
272
485
100
193
525
747
707
795
637
61
246
325
475
133
526
896
787
910
679
271
497
132
477
22
172
61
78
717
724
98
923
409
208
930
16
653
983
930
409
464
319
675
553
951
190
981
826
98
966
869
777
698
90
241
913
771
712
283
965
167
669
285
648
214
728
622
363
552
146
756
41
61
236
651
656
788
639
820
425
175
344
897
354
588
989
818
175
388
93
226
231
581
855
150
911
830
413
868
523
701
440
607
473
372
743
10
619
134
12
440
975
489
474
735
452
118
882
97
647
710
929
108
551
334
685
781
746
117
919
38
106
550
717
109
425
894
627
552
772
516
954
503
885
381
32
975
853
672
641
995
924
322
688
263
387
678
547
860
678
712
671
353
828
995
91
68
144
186
539
227
634
885
193
362
26
36
981
389
450
601
703
351
86
398
65
493
490
524
894
220
445
230
388
455
607
618
99
265
159
739
631
335
189
910
20
995
430
897
651
744
370
639
168
180
993
909
763
549
240
836
50
558
255
810
548
85
45
396
615
297
747
412
869
749
873
644
820
397
865
263
560
419
294
112
491
864
340
591
273
125
152
350
927
218
166
70
226
10
208
162
787
306
132
68
402
56
678
911
567
956
239
983
809
967
995
795
454
810
706
471
479
979
620
807
246
751
785
673
684
57
307
217
114
945
553
455
97
535
999
723
328
551
519
949
657
801
96
698
695
449
662
149
354
726
986
74
908
703
812
303
899
915
706
672
384
11
690
706
518
63
970
735
323
80
428
194
493
401
955
13
430
671
984
865
803
334
610
147
312
167
662
932
827
525
877
547
719
442
634
60
793
539
298
495
761
971
859
122
53
863
388
776
728
849
840
937
915
275
715
386
11
213
803
580
324
271
739
432
666
551
924
513
269
785
502
569
473
512
398
941
164
773
668
587
151
339
945
872
604
480
320
863
235
82
495
330
978
324
858
930
763
214
240
223
179
141
108
422
761
57
908
347
286
981
774
42
379
241
129
296
457
468
814
438
427
89
715
255
398
700
658
841
101
306
889
940
633
729
620
196
933
125
658
681
832
618
506
790
628
365
891
985
844
50
314
163
77
563
197
182
345
318
163
875
754
173
823
83
775
226
948
891
626
677
993
927
48
535
533
767
804
118
597
38
534
875
55
617
866
984
202
570
260
132
145
216
429
377
970
449
219
145
468
420
562
943
572
255
799
891
657
783
876
395
133
467
146
821
426
395
887
673
490
642
199
378
871
405
440
311
948
845
572
531
150
411
133
981
72
68
60
170
107
333
84
347
728
590
413
987
539
265
467
135
835
155
524
77
668
924
165
845
163
867
565
744
645
104
816
872
311
218
470
221
611
557
322
260
651
531
167
818
676
591
350
255
945
70
550
201
186
13
792
206
76
380
375
775
838
272
31
42
350
987
668
181
509
184
939
751
242
123
828
177
849
975
960
864
514
96
374
982
29
862
140
406
26
164
81
504
507
152
870
847
610
252
60
473
531
738
586
887
30
708
133
891
657
319
526
375
628
207
34
302
530
548
629
100
90
892
794
903
509
766
340
932
640
949
35
807
695
907
789
658
778
248
559
131
240
833
105
334
156
765
784
153
603
209
626
695
778
202
928
967
27
882
771
908
449
961
106
817
52
537
512
89
517
169
925
14
893
823
377
300
728
619
838
662
145
790
50
80
218
677
938
110
611
988
886
246
534
678
90
227
529
774
114
83
628
228
922
328
974
590
969
602
577
992
638
652
351
516
834
285
295
648
364
837
663
645
984
155
694
400
812
748
789
659
809
693
748
404
751
926
330
643
982
513
555
725
593
384
724
473
374
76
839
58
311
10
318
240
448
723
334
614
700
887
217
616
753
827
105
76
598
407
980
429
946
620
94
479
532
177
66
42
794
296
559
346
925
587
839
766
120
649
444
639
752
19
477
959
841
856
920
876
305
691
720
619
183
747
138
495
32
272
334
756
902
736
470
313
987
446
49
108
218
815
679
584
406
320
235
814
956
822
214
422
183
807
760
875
915
342
114
702
257
746
209
579
123
778
658
179
240
939
702
892
668
800
958
953
879
952
214
395
188
965
105
650
138
513
24
135
370
618
76
421
660
212
947
112
914
776
463
763
928
400
657
215
864
437
206
333
886
128
434
723
895
643
682
554
473
556
206
49
848
455
159
138
444
85
392
935
894
851
201
146
204
473
159
584
830
588
685
870
545
635
339
71
970
643
586
55
77
132
201
985
478
846
406
713
889
782
900
175
649
238
705
937
405
396
173
382
402
826
471
91
335
432
546
930
174
639
568
915
112
91
23
953
94
747
25
488
137
893
364
339
721
223
238
752
280
948
87
403
961
349
833
728
207
919
197
71
790
171
41
764
621
309
622
406
196
863
161
996
582
840
662
754
394
200
620
337
52
416
118
860
851
712
610
503
117
52
985
710
136
555
755
627
988
135
86
616
285
628
783
992
270
113
952
178
623
140
557
196
88
613
907
131
713
745
665
402
91
413
753
493
102
981
777
185
714
312
779
855
373
701
215
556
13
106
580
556
891
380
884
10
177
412
769
831
789
842
445
481
989
722
362
438
486
693
515
917
911
682
253
407
574
760
849
261
982
998
350
355
123
750
930
557
25
824
663
84
547
538
966
565
850
870
320
524
762
390
762
65
598
839
96
772
202
172
685
43
523
650
58
699
172
925
747
589
129
233
885
439
950
297
159
547
981
716
248
618
679
694
599
746
796
541
827
933
403
926
126
699
941
886
389
579
370
40
106
853
849
655
365
398
545
924
216
116
229
899
560
538
368
935
198
43
290
550
333
43
399
326
390
739
750
102
25
263
437
666
130
381
951
802
445
699
581
700
24
259
668
269
383
202
686
419
655
300
377
912
380
154
648
632
353
774
438
271
593
129
637
790
847
323
33
732
766
743
168
639
744
738
92
424
59
496
858
475
600
874
855
272
18
637
975
270
315
661
741
41
141
489
17
780
569
341
352
429
962
495
237
878
817
852
536
633
700
777
921
305
587
86
943
123
913
81
311
419
93
453
652
808
280
105
928
739
322
108
73
774
882
730
148
687
956
297
486
283
454
481
177
822
180
777
415
691
275
74
94
742
965
789
290
229
678
997
39
989
256
805
213
90
249
738
987
132
888
884
840
718
831
38
698
181
872
358
480
352
777
320
820
209
348
272
491
793
838
203
49
505
575
269
440
539
443
130
565
47
937
905
848
589
291
74
670
566
609
553
208
13
425
486
376
213
596
886
334
195
142
595
513
478
476
519
720
67
480
479
921
13
232
154
601
864
345
761
919
21
208
704
873
797
669
342
138
264
82
752
369
273
229
952
296
985
626
663
454
236
162
749
543
712
369
314
783
852
75
99
363
206
637
865
96
139
637
836
753
703
736
484
133
887
443
530
938
836
282
626
645
485
993
667
434
288
945
301
589
912
835
52
933
148
475
986
493
44
537
812
35
310
832
143
245
465
197
731
631
255
656
462
977
929
521
48
645
499
928
768
115
941
31
367
133
520
580
874
148
588
905
495
419
338
954
771
31
890
434
214
380
179
510
979
588
151
506
222
841
717
616
580
543
469
946
187
757
808
672
370
315
713
479
753
653
485
484
869
715
491
58
90
218
569
506
843
358
686
231
414
391
847
334
761
332
559
381
316
789
567
704
768
831
40
914
670
24
665
651
15
391
716
747
858
376
948
487
609
325
717
539
117
439
98
792
355
42
145
50
506
233
116
894
320
103
191
284
668
64
853
415
692
804
261
282
866
511
67
944
940
106
674
925
611
126
179
932
941
977
540
335
132
213
432
415
49
909
686
803
640
828
811
666
343
155
439
993
41
923
65
378
906
486
568
907
428
688
553
389
268
997
835
890
103
52
995
656
890
198
71
792
98
45
233
88
761
692
791
530
877
891
282
95
839
226
959
131
386
802
982
180
353
549
458
311
57
233
370
329
249
963
205
76
753
177
376
369
503
220
853
663
156
259
593
635
224
961
911
208
96
922
925
651
202
167
418
335
23
171
154
432
604
579
623
660
228
551
799
857
233
992
566
842
527
725
114
791
853
788
648
811
643
435
131
478
157
242
494
491
350
663
636
302
598
794
649
657
189
936
102
902
352
408
949
70
756
780
278
69
764
908
246
651
420
112
635
773
956
887
176
61
522
871
299
934
942
379
721
719
745
690
361
186
315
285
814
704
575
720
407
926
576
846
452
751
67
832
103
541
744
838
748
600
142
488
898
234
710
521
372
520
581
649
417
594
957
345
844
751
857
426
151
427
643
594
594
498
219
915
868
460
256
609
56
421
332
510
822
499
683
485
119
528
645
163
236
733
462
727
197
384
258
319
348
744
249
722
908
934
890
759
725
442
995
727
280
277
250
425
502
764
556
826
695
964
664
798
961
205
508
465
461
312
22
955
997
330
714
526
784
344
714
867
262
43
393
587
998
442
227
736
892
817
553
443
861
391
763
864
674
963
764
824
746
956
877
616
997
106
922
80
260
109
900
254
880
443
437
130
70
331
253
400
688
867
524
89
358
699
182
730
412
862
907
425
440
748
32
349
695
627
847
452
173
695
96
776
659
588
879
439
905
135
171
319
578
277
49
61
266
968
750
934
722
765
274
589
692
358
889
203
958
161
456
721
828
402
132
451
500
190
986
826
421
241
873
826
389
797
921
463
157
930
107
46
526
263
435
130
755
987
627
358
406
13
645
854
585
182
773
894
665
224
262
906
33
619
838
894
925
986
371
261
177
190
936
249
765
410
96
634
826
197
294
398
815
49
258
405
906
383
949
396
31
152
154
223
853
264
259
760
777
455
182
338
311
38
789
504
808
195
859
38
311
848
373
672
948
303
452
277
898
766
996
154
449
286
641
963
984
605
93
318
896
221
400
907
363
261
316
256
490
416
697
411
76
156
872
253
465
429
827
223
461
777
787
994
484
410
552
34
119
119
653
494
974
113
290
294
494
370
223
924
328
471
986
401
675
874
68
785
247
374
250
814
204
507
126
409
618
889
157
978
887
533
914
775
344
928
442
530
659
485
448
605
924
606
965
568
950
611
215
108
54
120
141
484
817
530
923
919
445
955
445
564
864
596
459
408
491
74
522
517
546
708
361
41
849
457
470
954
929
440
38
39
995
212
550
586
990
140
563
172
427
279
847
586
603
773
240
321
141
426
420
863
94
762
509
388
460
778
789
946
262
924
421
352
309
173
467
329
72
242
937
183
604
994
256
904
496
596
506
733
327
830
42
66
458
849
809
642
93
42
266
617
849
993
46
456
876
675
191
516
18
882
109
906
938
499
427
868
945
231
286
375
959
72
775
144
256
220
380
202
776
206
352
657
204
420
375
467
385
699
963
494
565
925
382
777
753
238
759
289
330
654
123
292
803
287
632
433
38
851
345
535
638
642
944
465
729
391
854
81
349
551
289
146
486
396
725
980
542
545
244
60
565
493
406
513
413
752
42
918
20
774
790
307
200
931
108
686
313
89
582
802
874
65
685
493
665
156
480
129
256
146
53
213
890
464
625
286
883
20
578
433
587
446
440
573
868
547
434
355
413
502
677
466
456
803
779
684
261
44
67
593
305
651
345
305
728
760
921
309
492
426
972
342
797
545
895
777
69
582
123
623
245
695
310
87
759
544
913
940
218
776
301
135
675
794
23
293
487
281
914
483
207
826
536
468
358
669
444
568
978
694
736
896
413
192
942
835
155
952
897
209
701
374
677
146
647
154
552
134
844
471
16
222
187
57
580
45
680
53
575
839
517
499
49
116
189
508
120
308
593
606
104
154
418
681
82
279
662
727
907
887
932
590
802
608
866
826
169
332
677
910
910
662
852
928
906
678
138
776
744
271
964
770
259
290
620
670
930
21
912
995
808
958
376
841
275
255
429
153
225
811
426
564
137
442
768
449
440
236
251
348
605
26
619
514
889
960
81
355
272
847
658
981
855
848
180
112
62
69
808
114
161
501
237
507
421
860
918
109
982
871
139
226
898
540
824
665
825
228
573
953
215
543
501
118
881
490
407
729
787
181
527
584
949
116
220
426
91
241
969
656
46
257
836
932
667
128
206
118
898
337
408
53
436
674
83
241
346
169
756
230
766
437
902
481
474
136
624
83
637
267
43
97
799
724
590
410
601
582
544
48
834
162
929
439
742
331
314
777
855
613
337
956
409
489
255
274
752
133
342
312
821
413
91
288
507
660
513
446
900
736
956
653
327
782
861
264
51
721
115
462
737
813
979
474
664
875
650
107
464
846
732
464
175
358
789
577
23
323
770
711
349
912
665
566
60
867
549
442
709
655
795
830
262
553
77
657
45
930
796
616
186
174
814
973
863
300
935
905
452
622
940
880
544
991
208
220
845
887
528
722
581
174
507
23
990
141
655
843
378
822
968
871
402
861
930
879
714
685
170
287
243
579
414
257
798
152
80
122
932
452
912
391
166
781
530
263
970
385
813
299
37
82
603
900
739
715
492
736
138
623
559
807
428
205
18
975
228
355
352
772
586
317
139
700
94
202
508
713
253
910
793
316
805
876
794
567
916
914
615
537
772
430
107
739
548
876
142
677
276
415
396
155
654
117
784
544
691
739
476
93
763
833
650
797
712
693
406
690
523
472
923
803
847
949
221
760
112
860
226
61
450
418
978
617
706
378
230
532
865
812
477
515
628
82
296
437
511
963
833
609
792
414
13
909
270
889
40
873
138
938
125
74
861
685
714
503
299
896
471
282
263
326
682
761
986
896
881
888
543
876
302
591
965
305
426
663
716
730
798
399
240
843
397
520
109
296
24
293
626
741
147
83
148
43
132
727
737
452
447
401
24
857
811
482
419
601
75
497
427
940
876
789
36
243
849
97
736
478
521
232
251
380
415
219
947
711
679
208
618
699
185
147
187
764
370
167
925
948
489
37
627
55
675
86
568
836
217
22
488
120
530
975
58
535
371
84
769
880
479
868
152
273
248
514
222
895
697
742
12
704
261
276
944
329
634
403
672
644
274
93
794
507
943
886
492
801
216
118
701
993
704
456
596
731
601
496
18
901
287
696
341
347
863
145
731
874
329
421
411
193
739
297
284
79
438
403
419
398
652
146
471
464
764
849
379
365
627
677
534
54
947
428
290
201
455
874
404
141
918
11
82
606
143
163
369
517
663
101
14
376
688
344
455
46
775
866
513
124
720
361
757
666
93
532
767
604
201
629
80
216
592
520
341
751
13
937
824
432
337
641
624
847
137
50
397
427
248
842
893
500
374
497
296
607
477
355
634
864
253
66
392
884
551
218
176
870
480
158
382
623
957
899
731
516
507
958
669
997
365
404
606
58
132
302
417
276
441
867
829
997
342
940
441
313
650
613
449
142
921
870
809
248
293
909
188
862
57
185
632
354
161
204
623
182
837
72
414
801
876
474
822
667
594
742
907
553
11
775
560
682
485
972
24
360
538
794
463
251
139
181
960
298
978
511
215
601
13
570
518
789
589
918
170
913
941
208
933
712
582
316
455
996
193
699
424
835
43
856
595
558
377
36
769
795
738
683
941
857
445
722
322
202
983
751
170
381
563
230
495
889
759
335
555
789
955
351
441
947
417
796
40
893
783
353
69
218
858
403
285
168
799
505
898
852
619
14
214
235
672
331
128
435
366
208
124
438
617
642
823
282
163
178
94
99
933
436
120
245
556
361
40
559
10
420
99
146
272
118
719
373
457
62
986
736
21
310
718
993
203
374
939
629
506
151
491
868
76
672
641
516
617
794
170
508
267
908
552
709
926
688
62
308
109
682
667
719
292
868
470
290
829
912
14
346
779
708
679
204
537
906
323
530
861
628
435
47
846
521
172
214
561
254
671
252
683
171
660
437
443
955
791
510
151
304
147
882
184
578
277
736
833
935
461
356
777
991
648
379
322
86
946
371
769
197
420
270
330
398
623
67
132
658
539
749
194
391
710
298
206
98
834
198
512
998
872
936
890
993
224
500
553
763
174
221
366
253
907
75
235
231
298
642
255
880
209
459
805
173
230
331
579
100
482
824
447
389
166
297
905
645
360
787
931
337
735
16
373
44
158
455
850
985
413
849
998
801
962
195
207
148
824
598
80
708
894
871
45
48
58
254
97
909
456
431
756
518
644
384
439
993
858
78
55
768
828
506
592
64
788
426
696
900
895
267
849
318
424
939
98
850
881
680
299
857
81
75
741
449
884
73
796
487
635
227
238
190
575
686
539
975
686
502
837
845
624
720
587
395
416
368
893
810
35
584
290
869
136
694
25
187
149
89
394
456
50
399
932
443
697
684
254
284
968
664
531
758
670
654
435
173
599
65
280
951
502
101
639
894
214
306
365
636
685
246
941
643
903
150
991
886
487
236
577
103
221
726
576
359
700
208
326
773
675
41
538
807
216
819
248
79
663
619
95
60
596
68
83
401
485
132
546
747
473
625
614
657
354
867
608
686
183
709
333
805
816
91
813
825
746
626
762
729
657
191
559
47
823
553
634
153
424
878
733
204
821
638
278
524
624
292
207
773
999
895
984
568
446
614
642
123
853
63
901
181
883
424
677
943
612
267
563
770
713
570
126
732
822
684
556
968
691
242
220
267
463
370
495
409
813
930
418
204
139
106
228
965
353
369
368
679
109
557
745
659
224
736
595
683
981
517
531
676
614
82
516
586
25
901
261
301
602
34
179
517
796
177
457
927
607
646
303
27
616
915
284
511
384
944
467
531
221
178
420
229
301
698
162
764
551
755
831
500
994
266
533
847
995
164
885
54
386
420
702
545
390
702
597
650
346
252
54
184
189
528
176
428
881
564
403
463
702
73
110
423
362
547
944
352
94
815
768
261
404
380
42
827
661
975
145
379
65
441
986
44
310
122
901
577
899
372
885
830
278
112
981
715
218
200
322
714
456
109
605
682
573
747
568
860
230
365
463
473
603
508
564
55
551
803
49
941
700
841
27
854
678
409
209
438
242
679
560
190
475
442
123
780
939
96
11
493
789
286
791
215
344
386
784
480
319
426
664
175
204
695
223
900
209
385
49
362
557
465
960
943
374
895
145
91
266
368
567
85
767
438
488
983
111
208
346
230
334
787
613
266
998
706
913
696
326
293
435
78
740
612
393
441
132
801
520
928
669
98
973
751
868
376
926
901
968
705
626
571
256
625
71
128
935
496
583
930
115
622
751
325
598
812
146
454
817
128
693
478
200
732
841
415
179
780
342
861
680
449
981
591
199
750
432
535
678
45
94
96
581
336
134
935
630
642
288
257
846
882
666
829
428
968
766
227
406
164
164
429
940
910
155
402
649
93
648
729
110
833
979
942
952
201
415
233
634
280
503
279
13
176
540
685
17
540
674
907
409
860
953
264
434
679
595
738
17
28
176
944
30
709
482
762
394
67
173
377
646
458
279
214
568
612
279
584
141
140
750
831
554
705
302
701
810
956
311
856
414
276
978
573
276
252
354
441
923
618
290
829
352
574
419
754
859
346
74
895
464
303
865
624
32
979
709
640
110
313
157
276
908
988
913
548
39
845
600
156
408
66
118
828
978
982
643
513
676
460
276
850
533
789
553
121
96
613
707
213
313
790
79
156
97
304
24
620
643
833
829
392
651
353
169
831
90
160
998
220
260
981
709
402
813
66
777
456
685
136
273
22
243
773
254
853
239
605
606
994
87
365
546
784
605
865
193
133
675
923
404
131
394
427
858
413
824
786
659
114
327
508
549
83
419
59
983
428
352
291
591
288
819
177
250
911
282
614
380
158
643
149
52
987
388
216
972
858
640
665
807
844
993
512
642
825
428
92
162
230
964
450
549
22
241
460
673
351
494
646
954
718
282
500
330
519
560
972
345
75
344
783
459
827
161
419
463
260
954
610
998
240
786
739
201
785
631
442
459
845
982
35
160
437
56
458
593
287
331
340
104
553
605
541
574
258
920
194
837
990
912
640
446
303
42
401
858
20
814
732
918
734
830
101
134
92
482
244
515
545
353
828
129
217
200
365
276
526
382
480
228
295
986
103
430
80
789
979
241
472
505
894
164
311
89
386
400
712
58
710
722
487
982
398
858
890
502
296
905
504
886
737
647
904
878
560
76
294
500
641
953
639
176
861
428
237
444
645
524
470
196
319
880
641
211
349
37
307
500
310
39
122
703
916
31
69
805
283
723
31
314
928
838
945
709
118
400
409
161
644
502
849
936
205
942
196
361
300
465
349
274
601
494
918
682
721
878
961
686
765
498
101
972
869
308
837
664
856
973
810
902
519
308
426
333
48
555
656
701
941
991
817
71
487
877
708
654
64
704
109
643
909
205
363
54
42
444
199
572
491
991
810
690
812
153
650
844
250
41
452
264
15
328
348
519
732
800
743
200
429
747
397
771
448
482
678
884
315
841
291
875
665
988
895
624
609
55
710
615
252
926
128
902
662
290
704
190
440
433
848
992
557
674
974
455
973
384
953
841
961
902
991
340
955
531
523
73
218
456
995
344
728
322
97
60
996
687
810
299
336
720
351
256
574
27
897
671
884
722
554
579
782
585
199
606
924
276
231
828
380
272
439
232
176
45
105
275
527
406
804
305
966
160
992
361
493
540
320
796
883
788
212
853
668
271
525
255
80
519
803
923
828
939
812
907
134
578
297
411
447
190
864
431
759
171
598
987
244
789
597
678
467
661
461
485
938
983
246
537
931
929
452
670
268
599
90
574
849
980
836
275
912
798
943
10
974
873
17
661
297
924
319
846
949
327
52
498
170
427
98
483
977
485
222
615
36
720
206
869
549
705
163
807
999
759
593
214
100
620
514
511
419
986
56
765
873
348
247
246
282
969
71
501
612
43
161
378
531
830
674
733
249
608
961
433
406
955
272
252
502
729
625
99
495
681
918
542
894
501
531
216
313
185
719
727
500
99
230
287
372
835
771
921
781
656
839
253
603
660
757
58
632
11
898
497
404
365
427
751
752
209
785
35
103
353
477
490
450
519
498
267
527
261
134
853
781
145
383
195
79
681
258
723
491
599
479
521
818
883
111
326
516
769
112
36
974
997
599
677
343
522
556
38
586
772
410
751
220
707
233
901
395
33
106
851
99
926
117
382
971
518
339
411
535
642
479
64
693
502
672
41
997
991
370
412
320
78
762
410
607
602
48
340
815
62
30
215
227
631
247
353
544
493
86
816
187
940
337
955
614
637
674
291
765
916
471
286
279
849
206
767
697
232
442
790
439
237
228
578
193
860
180
830
746
957
11
357
638
154
435
117
233
40
828
771
431
761
927
732
765
560
978
964
721
361
20
813
368
746
967
655
359
685
834
563
101
697
269
956
650
189
673
371
664
314
497
382
609
743
234
993
824
668
550
625
701
492
717
415
609
564
270
422
241
792
891
847
354
924
850
426
147
120
306
257
385
597
906
359
184
583
815
123
239
272
266
378
925
906
316
892
969
265
272
466
166
712
195
346
608
956
30
761
59
498
553
413
141
19
453
768
480
177
794
484
941
78
673
643
875
489
392
116
268
845
465
265
209
792
606
252
101
381
285
930
818
63
186
999
115
273
935
960
48
655
953
449
161
46
709
464
766
428
748
538
563
234
97
353
480
176
917
759
210
712
332
391
581
389
905
763
854
303
932
87
922
351
15
544
208
931
985
655
382
763
92
425
73
741
578
947
516
773
421
123
514
520
963
259
343
516
770
854
617
16
900
466
669
928
342
842
17
813
921
865
711
996
890
274
825
252
263
505
662
855
230
518
345
606
621
652
471
630
958
104
319
420
25
961
627
161
385
762
901
114
689
260
591
743
331
173
726
234
804
579
596
952
533
779
810
213
544
652
560
289
548
831
806
982
145
502
14
276
529
757
511
821
51
211
98
477
925
981
660
928
62
668
111
981
439
940
26
286
533
294
551
756
232
993
839
997
461
357
50
981
340
177
65
414
756
39
520
122
413
543
638
82
753
672
517
686
62
962
321
527
432
949
226
146
421
532
821
195
424
870
922
528
309
563
546
107
728
448
839
771
594
938
352
623
601
628
456
537
270
332
692
106
418
898
387
991
523
48
570
219
201
463
518
198
115
357
451
652
488
818
545
732
911
426
327
362
308
178
911
683
212
785
845
295
446
801
594
95
978
790
34
316
963
621
640
380
607
26
700
128
755
928
194
763
104
817
196
966
333
765
124
502
221
276
144
889
358
805
430
831
72
166
180
576
908
913
814
89
582
563
212
176
61
673
235
130
218
689
776
989
147
819
599
174
546
756
878
154
823
758
685
955
590
677
35
682
267
107
974
863
69
572
736
288
703
711
240
395
206
22
710
438
190
819
424
998
903
821
217
752
10
795
35
460
128
318
595
366
242
318
730
721
290
914
753
982
903
619
953
118
157
968
473
251
429
634
213
696
368
585
612
268
865
132
727
648
363
718
658
443
193
75
203
515
419
368
694
400
755
288
86
844
805
628
797
138
664
673
126
689
728
680
601
689
133
196
524
514
574
614
603
161
801
536
962
619
767
857
613
815
960
661
414
817
775
578
181
892
600
602
464
994
153
217
648
632
668
355
61
390
931
865
500
380
812
321
243
111
915
816
308
240
733
779
474
931
191
399
409
746
137
339
381
153
39
371
60
60
785
798
686
348
319
98
766
858
381
970
600
48
984
847
972
270
905
504
398
171
372
250
949
539
331
839
212
174
884
251
879
313
420
129
618
724
528
235
514
811
146
448
127
629
749
533
625
412
429
295
578
981
306
250
266
719
583
864
12
385
390
559
868
618
248
918
349
821
347
735
678
266
246
695
277
868
644
933
691
246
284
747
648
621
573
942
493
195
991
848
911
689
959
86
486
409
958
854
777
269
270
522
91
584
900
897
898
417
858
75
672
620
388
990
499
231
21
336
383
242
747
995
376
744
710
556
473
858
158
26
805
493
389
200
746
889
747
348
941
434
126
117
206
907
197
255
818
547
115
249
345
504
521
321
14
268
299
625
300
626
466
392
584
21
899
736
858
457
258
606
205
873
563
983
251
755
619
57
815
245
352
586
515
385
572
402
886
705
114
562
455
825
143
489
727
642
839
192
898
323
839
610
287
563
266
599
929
313
374
365
593
472
753
847
585
77
139
764
291
337
151
292
350
846
146
221
779
994
609
192
565
193
265
192
250
691
964
713
864
181
566
517
152
457
515
716
290
229
959
646
625
377
480
57
416
284
203
439
598
721
860
596
154
902
408
664
324
672
42
139
456
980
570
503
502
907
270
625
25
987
177
341
370
46
340
621
794
20
925
707
677
222
180
174
895
219
73
804
313
943
208
480
457
324
34
494
866
343
324
462
552
264
462
975
252
263
110
519
102
317
588
974
21
93
153
40
921
431
35
172
704
556
955
972
879
981
667
303
65
237
111
720
539
116
548
380
682
240
695
628
55
391
920
134
21
18
578
204
696
146
844
101
33
121
689
823
93
173
630
422
656
228
114
251
321
13
546
624
814
712
183
521
640
49
820
379
784
214
785
211
213
977
73
916
638
779
594
719
883
678
240
301
627
875
959
329
878
74
145
789
346
249
606
221
958
208
455
622
30
548
361
634
651
377
549
673
301
217
796
336
39
472
940
770
85
88
74
491
99
22
162
164
353
619
115
757
850
309
269
37
615
246
508
386
751
23
211
884
135
616
559
870
23
724
849
23
848
190
29
979
261
475
992
260
654
130
64
427
903
568
949
561
765
481
342
229
590
675
549
562
259
955
180
199
840
768
663
696
665
143
663
768
801
52
255
278
798
709
111
438
28
98
999
748
236
689
65
71
468
362
332
963
730
894
23
663
858
583
149
156
358
199
439
876
526
315
47
189
956
691
665
632
125
544
813
207
966
886
676
847
559
249
48
582
323
255
555
895
479
755
643
15
918
519
245
373
907
427
843
179
407
987
41
841
865
463
96
685
749
536
546
35
975
956
563
625
731
71
643
855
676
931
425
904
965
596
604
684
86
232
105
814
662
241
885
631
829
111
918
676
919
985
827
825
763
131
686
239
88
238
642
11
983
952
568
829
898
36
979
871
727
23
892
602
217
495
215
202
369
488
564
888
29
511
437
15
754
87
597
147
946
184
625
645
850
215
561
804
657
995
353
542
796
618
670
154
563
589
630
389
290
732
796
498
623
824
827
767
993
48
515
308
363
900
403
825
67
416
830
236
467
457
888
252
670
975
985
40
45
991
977
203
802
708
314
705
571
42
963
275
753
198
882
578
606
192
67
359
493
102
114
182
968
904
702
623
217
334
521
563
892
154
688
990
592
579
844
248
204
216
966
989
680
89
519
377
512
675
977
174
247
525
991
218
273
93
388
979
814
317
198
133
869
803
911
802
399
25
405
10
144
952
226
517
586
870
393
624
898
673
73
371
712
996
51
921
257
431
246
559
836
895
634
856
76
722
817
134
745
734
347
792
756
924
966
578
317
604
778
279
351
401
936
210
488
833
904
158
814
776
728
522
305
298
411
872
541
997
933
169
727
986
223
156
121
251
295
283
66
54
196
129
198
340
325
274
656
963
574
136
344
939
250
241
324
618
710
594
187
654
436
298
670
572
748
969
929
123
794
272
912
860
670
50
750
267
78
657
244
330
733
827
506
412
781
323
627
668
205
851
82
791
423
884
312
367
238
414
954
650
277
573
228
727
165
504
689
875
736
627
667
922
522
496
213
157
54
773
873
569
429
844
615
738
608
653
242
894
211
536
876
580
357
809
79
415
516
259
632
629
364
858
499
43
393
104
447
491
483
275
737
432
562
531
812
344
802
711
545
371
994
877
800
217
297
493
118
505
781
102
339
881
103
50
895
703
709
840
45
381
386
501
463
518
686
170
300
77
847
463
458
540
349
282
731
437
653
545
782
331
480
835
338
948
283
473
160
248
504
685
331
756
116
604
642
26
385
758
583
500
666
940
629
434
52
143
87
805
915
477
715
385
407
226
173
462
538
291
962
859
86
909
232
761
252
401
57
982
936
98
753
984
795
905
433
203
810
939
849
164
30
80
456
129
352
95
606
45
41
133
612
390
250
282
491
259
983
760
377
314
186
955
811
42
249
454
701
153
266
326
580
681
817
205
397
651
823
858
570
908
164
409
610
526
984
731
139
572
167
323
516
958
962
732
761
426
125
384
18
344
273
981
919
931
68
451
918
95
75
434
456
635
593
472
557
321
81
70
621
191
84
156
646
463
431
940
378
225
208
921
137
231
927
81
795
342
732
648
639
82
174
811
943
279
382
928
243
519
927
973
200
83
617
718
343
465
147
775
955
459
962
508
965
790
600
455
132
992
327
561
839
950
663
595
106
958
253
131
539
324
623
460
100
648
995
114
951
341
528
512
172
256
27
370
169
708
90
91
31
630
939
989
280
133
812
10
169
793
767
478
194
975
552
904
178
739
437
440
312
457
696
93
837
87
717
711
714
446
676
767
948
862
394
45
912
23
755
981
443
878
268
285
349
394
186
472
842
871
167
116
694
607
310
704
192
459
71
177
867
779
340
376
610
105
198
357
775
959
164
289
696
961
140
243
67
95
935
239
426
918
836
793
859
767
28
687
17
622
155
891
693
823
112
743
196
839
675
14
400
25
349
931
704
49
320
26
335
666
588
242
743
860
472
793
165
281
93
727
667
49
958
600
308
636
100
756
393
443
942
842
957
839
952
907
518
425
541
982
159
850
11
873
835
689
446
786
430
585
314
606
47
299
912
606
754
172
535
848
795
65
826
876
881
619
336
510
467
137
148
490
678
443
214
963
815
876
402
843
472
913
524
557
807
577
261
469
262
861
200
447
148
439
776
907
505
623
218
805
981
622
952
568
503
282
482
592
947
839
844
601
179
911
474
824
693
736
467
977
793
820
155
702
489
536
316
772
225
998
988
38
883
319
772
723
327
564
335
164
218
558
998
274
940
354
262
963
520
162
916
396
561
840
407
156
771
351
961
335
960
415
68
101
110
629
420
332
620
330
906
677
653
334
654
295
995
884
919
438
210
730
785
623
79
514
883
919
431
874
81
356
647
423
543
342
491
877
902
921
77
576
395
971
437
908
775
991
372
128
729
916
27
115
365
285
514
510
877
177
773
27
396
694
920
281
456
454
239
39
374
255
882
393
915
279
251
705
496
736
420
255
184
426
917
777
172
848
165
43
280
998
205
283
307
31
878
233
996
321
198
170
933
803
58
148
108
94
201
177
840
838
35
677
866
147
800
605
834
732
11
12
876
740
403
305
938
827
387
797
451
415
315
654
744
392
31
39
472
718
740
64
548
755
196
508
393
152
868
93
312
283
116
436
86
919
637
613
520
967
27
959
159
967
596
705
882
654
221
898
201
426
283
869
99
606
933
832
535
16
131
735
768
903
162
871
721
507
129
866
177
542
37
30
481
149
443
804
675
360
561
861
687
796
456
925
405
827
883
392
329
424
171
646
507
764
943
338
346
496
630
190
28
278
73
882
692
487
26
950
102
733
575
116
962
886
938
988
406
581
497
381
456
288
572
998
154
31
622
879
534
399
848
283
898
469
51
213
756
41
973
222
921
491
242
783
629
246
679
261
511
429
414
638
287
90
453
474
824
343
672
767
770
660
460
138
635
571
989
677
890
122
480
65
486
613
365
90
455
189
327
581
393
877
63
304
696
262
285
500
475
463
744
290
401
379
709
661
593
115
736
198
699
577
700
349
531
567
127
932
949
216
44
800
416
862
951
326
981
789
207
873
900
877
526
616
332
898
876
299
396
821
303
959
386
398
914
720
333
367
773
405
500
88
249
947
861
266
855
820
394
961
878
671
79
371
881
376
836
927
664
381
833
800
328
665
146
613
645
646
784
540
427
499
26
663
292
841
872
842
466
385
974
465
390
562
133
402
867
671
78
607
706
79
859
460
917
984
827
556
121
474
636
842
117
909
307
824
225
305
456
231
151
967
466
725
253
600
836
833
976
296
823
368
963
225
779
973
142
241
304
577
969
436
785
92
787
801
454
464
846
50
368
621
936
662
438
390
285
681
556
41
499
322
357
71
227
259
311
66
412
417
669
654
252
793
527
125
554
23
791
755
20
329
990
630
72
503
374
530
924
509
654
342
800
326
227
764
344
544
940
719
816
485
830
328
202
974
804
263
839
78
974
169
279
450
692
177
123
985
14
21
382
66
140
934
96
407
653
581
413
687
685
664
161
820
841
376
769
884
235
382
598
802
432
863
713
364
567
139
863
450
966
328
93
542
909
878
104
568
530
295
851
422
925
791
91
132
136
365
696
620
734
220
415
472
592
290
339
693
885
502
512
594
869
229
433
722
692
700
904
682
753
319
500
445
128
659
384
639
169
270
586
312
65
57
64
256
783
101
965
724
725
673
981
62
51
891
65
313
143
92
836
364
715
478
166
844
888
965
999
854
661
203
789
210
768
143
843
677
888
935
249
245
698
45
14
401
647
948
829
586
225
291
194
241
172
119
309
448
416
626
764
204
760
150
169
855
458
112
994
186
370
53
193
669
328
787
804
702
700
696
305
939
345
786
747
993
491
703
907
26
747
297
408
746
707
835
231
495
581
767
141
549
90
828
145
403
675
397
470
895
86
287
235
797
810
191
385
141
756
542
63
293
626
747
898
946
828
402
31
866
653
671
752
190
110
863
738
656
962
769
630
375
432
259
800
381
296
427
69
449
344
897
542
18
789
578
100
956
788
811
742
169
904
860
110
638
656
382
433
847
72
954
665
976
208
660
487
74
641
866
391
784
565
501
827
391
262
204
444
177
407
732
488
548
497
313
332
795
894
155
42
396
710
600
39
932
921
831
102
240
128
694
822
461
810
150
739
388
366
692
482
710
46
423
464
62
34
365
114
788
520
832
579
573
81
553
317
885
131
338
385
163
457
770
72
501
113
501
669
220
152
422
140
67
589
865
508
704
599
507
793
496
138
544
953
839
448
563
368
617
598
737
172
372
478
810
987
922
886
249
783
999
562
140
485
946
750
629
259
589
846
654
564
709
809
212
801
814
599
363
552
696
607
61
951
935
734
491
352
438
838
997
130
158
133
407
475
362
569
28
55
778
220
728
76
662
42
854
591
332
342
601
501
59
588
911
552
287
231
510
272
645
496
14
259
150
808
506
353
469
467
963
50
211
434
266
380
494
451
719
349
474
579
344
214
152
684
487
277
369
105
101
620
881
527
14
32
790
983
775
398
73
623
39
860
54
714
373
320
484
951
228
598
136
526
923
129
697
113
319
489
561
551
858
131
603
118
705
338
541
106
816
345
689
442
717
24
985
322
28
396
101
693
672
47
604
615
758
470
376
316
711
968
549
912
766
138
197
673
235
252
706
868
388
183
761
337
961
655
98
886
359
936
972
271
579
89
427
955
343
480
781
422
899
367
423
921
170
948
370
77
895
833
325
879
267
486
665
124
559
891
59
677
747
669
583
819
500
444
116
754
319
933
886
13
538
308
602
569
116
802
905
957
862
352
510
300
129
235
633
322
60
544
678
485
835
643
430
592
714
685
67
125
319
516
547
379
831
558
604
848
532
169
972
204
808
965
462
185
881
24
235
627
647
836
691
888
752
713
942
151
156
439
827
667
583
920
793
401
807
632
995
466
369
35
670
431
735
169
27
908
921
503
13
942
774
501
657
324
768
275
858
239
583
679
235
985
452
217
449
971
589
59
590
768
322
189
750
114
712
284
289
802
873
902
877
609
393
371
61
502
87
512
362
335
959
95
876
757
528
316
624
770
25
850
498
542
266
864
405
516
659
406
264
833
453
722
42
507
873
136
857
958
748
879
549
137
809
737
734
50
551
672
59
453
508
24
108
546
156
389
316
355
59
526
721
218
698
308
943
729
468
292
168
56
514
369
340
784
308
796
41
587
816
923
823
822
600
542
841
356
651
848
962
827
531
96
530
191
266
276
828
371
659
464
334
880
518
898
621
526
348
744
547
739
913
524
341
208
179
769
24
61
935
260
648
45
496
869
396
31
859
375
551
597
491
208
404
176
400
131
822
570
733
949
989
583
681
728
296
753
526
216
779
119
970
545
71
506
803
410
622
63
248
99
616
429
679
230
628
913
386
87
329
740
570
187
94
535
869
965
646
487
697
736
294
39
309
416
765
925
29
88
84
184
411
735
600
992
123
304
984
66
907
447
628
230
270
958
155
981
135
686
266
41
474
88
51
370
68
812
507
593
425
300
318
103
979
131
630
220
709
806
202
673
870
310
235
518
417
922
399
200
500
477
68
135
309
803
337
373
252
520
825
829
440
729
189
622
854
838
636
570
892
65
209
443
630
479
640
225
845
818
258
522
872
358
583
721
391
367
292
669
385
357
322
957
891
900
675
207
131
682
873
718
952
907
138
40
202
146
147
298
921
793
113
313
925
957
335
269
489
395
131
883
453
900
991
991
793
946
132
987
273
434
613
808
273
155
375
467
580
46
813
750
295
297
236
983
206
51
851
132
378
393
674
570
421
454
714
410
656
876
214
177
900
893
732
639
23
83
265
773
738
803
689
27
145
643
352
847
318
835
77
153
28
957
614
469
681
650
322
715
442
449
350
68
949
620
774
846
765
289
554
235
98
841
859
201
409
35
19
356
227
691
247
200
379
721
289
308
964
131
964
619
530
746
254
852
285
482
292
968
824
494
878
286
152
723
822
91
117
330
186
953
527
162
140
562
889
958
509
81
163
457
123
985
798
680
841
800
687
448
980
674
843
440
700
580
805
459
909
277
891
920
127
130
895
516
912
610
267
820
830
837
136
532
947
255
395
391
245
687
432
150
588
304
676
827
585
640
702
212
855
242
310
956
835
924
606
883
148
795
915
264
833
972
819
38
332
844
467
150
857
666
357
333
804
475
692
94
431
985
273
170
27
388
822
389
757
116
157
117
895
110
416
927
784
500
817
541
971
165
430
506
488
977
196
75
863
21
526
427
431
854
41
146
304
508
146
122
314
994
868
361
508
205
633
153
401
838
351
253
606
463
128
67
391
351
614
522
866
720
901
140
563
485
971
255
615
526
276
625
514
523
921
441
178
711
920
196
700
992
291
312
229
173
75
303
852
646
321
99
512
105
381
341
457
713
529
719
157
697
321
353
865
862
993
420
550
237
176
656
806
83
510
19
459
537
744
510
778
14
175
894
221
521
488
390
426
131
109
197
312
459
783
940
200
942
436
323
299
820
288
640
832
433
247
427
204
284
654
868
615
23
832
281
624
806
426
761
324
224
376
462
357
357
529
556
729
866
376
876
610
980
971
604
260
281
205
214
930
342
357
762
90
950
884
50
677
526
786
241
221
636
11
749
712
144
548
515
180
479
348
882
310
574
866
995
465
34
114
189
731
161
683
14
61
254
837
879
133
313
435
588
833
343
259
778
964
378
317
166
478
270
236
746
909
620
798
75
853
618
45
954
732
276
204
274
383
814
769
156
479
332
767
975
781
358
228
739
544
762
543
286
195
342
794
498
401
26
76
884
310
656
319
72
445
254
90
946
453
436
837
108
794
249
864
128
932
926
354
582
628
484
177
638
332
600
49
237
183
119
60
471
510
589
177
769
990
828
31
903
257
458
554
419
40
866
517
723
102
66
754
109
387
586
979
149
164
136
542
411
237
209
620
845
546
88
78
116
655
745
796
611
412
478
408
429
437
751
712
529
492
688
662
367
196
477
695
17
349
370
200
484
88
231
225
509
164
273
500
475
968
217
764
213
800
714
428
242
213
650
912
844
498
557
699
897
417
927
349
237
271
620
736
403
925
446
227
538
748
748
561
244
105
472
324
878
363
598
404
424
848
346
985
669
305
809
451
767
231
65
93
63
932
486
712
742
109
826
523
764
90
200
814
359
873
257
406
341
416
546
895
401
956
890
806
27
168
200
308
885
823
859
13
574
327
768
28
105
996
752
666
493
809
902
77
159
893
263
548
344
101
109
641
430
37
131
673
12
359
924
643
807
904
10
789
730
454
354
247
524
418
575
761
208
377
804
559
675
917
486
121
770
580
346
679
308
906
638
147
975
591
666
760
29
249
722
800
318
73
599
625
788
222
374
526
716
926
974
583
473
860
827
116
795
626
413
589
330
815
570
398
872
152
104
621
710
492
216
448
200
136
562
860
919
799
412
812
148
258
347
669
972
888
51
924
479
952
294
657
352
827
802
386
51
241
740
238
416
761
982
783
388
115
383
369
550
684
860
316
568
433
936
543
540
215
10
37
351
508
233
894
243
707
981
58
839
156
975
471
30
238
769
962
550
740
693
530
801
62
395
992
750
176
23
343
657
269
237
688
545
226
251
933
994
584
422
822
147
466
67
777
586
700
626
910
503
385
508
892
982
109
196
336
53
927
710
781
555
547
118
619
940
611
233
82
250
887
615
793
873
45
822
104
965
917
604
835
930
400
824
883
596
298
927
234
721
917
687
403
586
758
745
630
320
766
824
27
40
149
462
98
973
615
451
705
598
938
457
418
45
263
718
576
938
585
42
271
554
120
227
935
243
995
587
929
287
992
712
54
589
310
351
40
891
191
899
77
433
845
563
230
13
724
908
691
545
72
788
901
702
198
468
103
798
496
504
450
191
367
254
249
811
543
82
949
900
288
633
250
54
219
799
199
630
20
393
860
720
287
278
836
959
957
148
264
278
298
338
865
915
727
348
945
184
924
88
36
567
616
358
136
286
647
244
273
489
615
445
404
147
386
448
786
939
726
523
453
606
872
110
967
844
878
315
403
362
195
727
742
962
965
366
429
57
147
479
873
162
111
407
557
720
187
842
547
769
39
411
772
910
390
779
774
126
717
66
924
10
83
719
377
833
16
734
911
543
901
110
308
588
64
524
843
678
45
423
864
669
868
821
693
701
708
147
705
896
902
147
441
58
707
295
177
751
98
535
898
176
688
107
738
787
391
564
764
447
906
701
792
149
547
273
565
572
299
889
497
89
212
909
577
574
706
139
15
11
237
746
657
368
297
562
826
287
305
79
777
826
344
672
546
189
581
574
536
964
645
783
223
454
734
540
394
624
640
172
295
87
693
680
290
482
312
954
863
23
266
854
270
894
847
858
948
638
165
177
291
901
529
352
638
204
501
707
298
438
654
178
104
883
790
557
329
522
517
790
489
192
550
515
632
44
98
359
607
148
831
524
918
348
65
193
296
116
202
338
580
460
169
852
948
471
371
827
368
74
419
480
547
803
165
244
464
695
643
262
458
584
652
994
798
156
370
929
169
205
513
648
388
881
668
200
721
502
200
562
696
236
413
597
419
984
445
822
881
513
653
260
891
410
656
782
652
805
866
957
427
450
215
615
349
299
266
193
362
966
179
357
746
718
511
22
256
592
423
274
444
689
382
390
449
155
401
298
467
624
474
591
604
729
926
953
398
137
499
886
463
216
475
219
438
126
676
444
554
172
448
62
352
223
212
519
187
186
294
105
867
135
898
260
192
478
720
692
700
551
24
984
719
680
739
650
44
760
140
935
310
520
352
188
583
302
397
28
847
475
441
535
446
545
722
682
724
410
196
769
764
721
172
17
65
595
319
748
102
287
717
591
995
778
874
671
161
852
461
16
461
252
235
133
849
734
49
798
201
302
875
650
93
981
349
943
427
969
323
517
412
348
655
933
360
463
746
75
604
57
559
316
347
532
898
557
166
867
273
532
670
958
376
784
545
671
421
278
889
128
116
858
451
567
987
80
10
162
906
191
470
803
712
530
956
909
562
90
566
458
713
254
279
974
74
203
257
542
480
998
423
997
667
191
795
633
457
449
486
19
527
226
766
771
457
232
692
256
609
527
196
257
758
701
765
348
672
986
13
957
614
595
25
370
808
63
435
509
494
593
97
789
938
448
50
159
36
93
570
274
663
181
321
296
698
121
32
493
815
966
95
623
737
777
234
868
882
411
328
857
788
618
945
905
510
256
102
720
26
800
323
360
985
39
679
936
414
316
493
953
165
217
531
903
961
44
128
943
545
326
893
73
946
190
98
326
481
267
102
718
512
437
676
405
316
917
324
758
605
629
718
560
536
709
718
463
529
167
929
378
654
41
986
184
677
46
929
275
563
327
117
465
486
427
722
709
823
892
275
384
356
395
470
997
261
245
521
360
716
609
168
660
869
608
699
773
273
560
813
589
885
217
39
726
33
121
219
517
972
64
746
210
473
229
137
377
691
53
278
176
615
40
416
13
324
347
677
157
77
399
380
186
914
810
443
358
697
438
216
66
86
385
220
916
317
409
887
454
168
178
331
942
462
837
265
817
21
826
424
762
983
713
341
637
930
994
893
124
716
827
794
634
742
862
100
299
119
691
542
573
41
886
702
643
492
290
929
803
678
865
627
806
206
351
991
499
322
173
278
101
601
304
224
974
444
936
539
483
232
687
842
93
37
543
38
421
35
276
573
635
356
853
174
380
132
760
589
935
897
726
779
852
29
174
633
329
711
189
506
770
267
854
842
646
493
915
20
557
483
296
499
232
20
519
766
138
766
743
93
545
328
814
212
362
575
286
126
913
87
621
216
211
370
230
313
636
558
247
114
408
916
84
956
141
357
47
22
542
682
621
489
388
538
361
618
949
139
930
947
139
128
799
82
995
860
95
388
784
614
666
774
232
369
806
730
478
21
935
345
757
695
862
248
874
564
109
225
446
678
341
929
825
667
775
504
348
914
844
608
447
577
777
171
616
203
832
360
456
350
306
106
594
916
397
306
659
193
262
717
275
169
821
801
424
379
856
585
495
390
611
880
841
795
721
198
163
925
230
762
60
30
537
856
884
536
778
173
131
353
686
260
712
362
681
873
737
162
868
932
682
514
286
249
920
155
965
852
941
608
688
941
968
508
366
291
742
66
17
49
973
774
650
937
18
639
528
115
558
892
860
991
411
374
988
460
445
452
139
749
222
338
119
418
819
254
598
557
784
16
335
757
819
365
279
707
427
731
566
207
648
267
690
522
225
98
724
949
526
953
360
495
434
367
231
753
908
475
522
32
931
775
332
480
67
361
155
95
968
184
45
58
77
428
880
109
64
724
834
57
862
533
973
695
313
123
170
784
664
408
93
206
507
249
848
643
996
411
317
85
291
213
725
341
175
91
713
116
769
32
822
48
502
338
903
683
853
140
653
489
725
853
162
178
707
715
204
619
411
949
712
861
910
672
964
433
616
648
978
824
161
523
26
341
417
974
105
368
29
96
765
874
18
534
769
168
973
546
912
488
817
442
832
910
904
533
901
683
900
566
703
567
328
878
600
280
947
319
358
230
259
701
261
973
68
422
732
533
531
885
403
838
934
234
700
477
923
480
328
109
357
350
320
450
683
498
992
162
911
664
128
478
204
492
444
960
962
951
453
36
443
710
317
854
384
795
611
165
435
777
424
768
153
414
454
170
952
838
769
620
887
168
571
656
543
256
325
37
363
914
315
486
62
403
237
72
380
911
756
843
541
562
222
484
174
420
910
638
12
213
607
374
34
284
611
150
619
913
867
180
65
617
555
894
143
915
132
355
637
41
526
796
643
989
555
651
370
629
156
38
841
805
284
123
193
832
748
192
599
600
560
860
825
301
446
902
499
285
370
797
169
807
757
860
269
132
597
725
926
525
824
410
498
205
301
224
133
579
148
122
248
361
937
90
784
151
994
459
235
481
15
796
479
750
85
846
998
614
215
694
987
11
877
903
543
323
804
408
874
705
539
712
311
367
694
704
285
527
751
187
880
806
648
296
856
816
677
548
107
271
403
694
486
485
575
821
677
375
989
716
109
525
805
915
274
161
587
285
402
448
12
623
47
252
104
489
444
669
657
908
937
534
984
89
923
614
497
553
44
881
324
177
145
759
646
475
394
417
588
363
904
518
983
971
390
994
307
970
718
751
540
454
108
512
754
939
427
990
38
219
220
549
877
63
701
469
249
640
158
226
360
157
735
354
565
730
450
603
200
646
69
311
662
306
226
126
596
773
419
665
513
532
916
252
112
199
159
443
966
868
801
257
773
678
148
376
879
726
208
651
109
368
485
451
511
520
125
515
997
118
979
308
826
179
814
942
659
785
332
770
706
880
131
114
978
482
119
83
830
898
150
430
594
753
684
414
138
661
885
50
176
186
699
113
541
395
834
101
643
174
357
966
687
696
586
156
340
830
661
546
114
438
524
661
630
560
698
733
965
700
321
249
558
745
973
500
523
915
44
543
178
767
448
744
588
669
31
696
57
254
356
650
464
415
843
199
537
467
992
598
530
11
788
622
550
478
729
530
676
613
576
828
13
144
481
494
820
771
220
977
663
378
885
258
63
152
470
265
289
475
419
312
54
460
745
590
169
644
807
852
230
857
530
900
158
164
266
327
705
320
636
159
653
231
887
656
261
319
285
909
913
736
590
193
745
925
693
960
561
25
601
547
151
148
213
43
733
777
233
586
144
457
220
676
131
209
404
975
663
594
728
585
139
587
802
979
695
324
809
81
946
311
780
735
731
165
349
901
234
216
44
154
278
426
435
776
535
158
108
629
605
474
275
667
853
274
470
781
399
743
375
957
599
829
16
524
152
373
785
969
49
855
765
936
41
410
339
544
511
740
766
104
860
756
750
997
465
375
557
895
366
817
997
745
101
324
26
560
476
861
501
845
446
528
156
767
111
139
155
861
132
157
274
99
961
648
880
973
510
73
852
379
206
787
524
637
41
389
745
839
95
393
544
51
32
10
180
33
176
951
374
697
282
146
113
240
394
49
925
557
134
157
65
139
362
395
778
19
590
762
727
65
253
95
640
486
877
250
479
442
818
472
337
547
680
847
980
958
929
173
177
655
173
665
733
587
235
360
272
762
658
574
124
433
835
343
509
974
996
84
359
413
806
455
131
124
479
551
150
658
508
113
79
359
631
772
571
742
551
584
658
751
869
690
998
39
552
427
652
557
108
217
368
613
145
565
34
553
220
475
40
546
955
657
932
668
347
514
848
695
45
30
359
531
510
523
399
712
989
915
945
634
258
445
321
824
538
62
55
613
838
541
129
293
269
582
911
920
844
539
691
670
891
840
935
65
338
634
948
284
704
600
737
19
161
404
33
820
260
420
116
97
480
300
211
470
182
645
215
432
786
721
900
234
622
104
376
257
26
126
277
931
766
555
925
961
148
955
80
897
638
125
751
256
125
859
224
865
589
317
242
768
465
243
404
789
124
321
544
856
477
205
379
638
807
749
851
643
580
505
552
37
500
901
225
898
289
239
140
546
195
968
714
131
775
26
673
460
619
381
342
67
941
860
104
838
604
910
290
998
421
47
914
139
491
304
212
245
889
218
581
838
93
183
126
699
326
389
995
435
321
74
911
40
539
343
635
417
114
515
67
58
569
579
616
157
131
957
582
109
384
110
122
250
693
985
507
357
310
494
904
745
339
378
25
450
695
23
544
303
180
770
559
958
574
607
910
375
352
684
737
552
203
852
93
307
696
412
890
519
784
970
887
158
202
656
749
193
747
495
96
804
764
668
50
625
293
463
150
990
545
566
249
367
660
683
297
94
671
660
756
796
165
696
888
91
252
59
344
867
705
235
684
999
204
250
476
59
694
618
715
705
732
918
817
245
348
683
340
322
341
902
411
617
645
975
230
724
732
785
318
893
414
989
360
350
892
92
722
643
715
227
438
525
747
304
235
522
858
655
230
966
234
246
738
673
959
397
724
372
452
976
412
906
215
837
755
422
334
342
679
516
609
79
790
822
416
827
525
630
641
646
977
468
265
833
788
542
631
894
579
797
498
730
906
948
166
274
887
74
78
525
469
707
707
393
650
150
135
989
247
564
863
152
733
152
43
506
827
265
981
70
395
250
109
795
23
895
156
970
681
344
897
803
356
339
505
585
86
157
211
619
315
530
334
582
16
867
864
149
178
311
169
432
127
719
125
566
783
701
35
701
492
628
141
393
117
750
255
289
726
344
27
625
97
879
727
102
858
432
703
392
655
110
576
219
243
197
823
76
111
190
959
407
998
99
859
943
895
439
130
218
927
902
697
610
779
511
487
974
876
222
707
748
708
809
843
429
978
415
953
213
641
841
981
958
386
557
742
921
880
736
643
483
940
905
238
235
863
458
437
42
141
483
365
818
714
416
447
362
700
569
625
99
844
274
765
51
297
562
379
632
835
73
929
482
782
698
948
61
823
449
912
912
999
497
979
249
601
685
358
349
444
364
499
845
418
738
600
121
756
392
240
179
127
873
562
394
86
514
984
226
874
997
811
304
274
622
329
146
126
830
117
681
894
684
228
653
635
963
651
896
34
119
287
752
404
939
124
32
652
409
859
886
346
715
939
591
98
627
662
766
604
681
824
74
499
610
272
998
465
494
925
971
530
150
982
256
43
138
428
149
680
36
902
464
390
191
249
687
595
275
973
24
589
401
329
472
196
78
416
372
18
690
221
689
456
663
658
419
905
50
358
650
33
738
267
534
486
259
477
191
347
193
507
316
783
635
943
628
603
615
974
947
631
364
421
874
743
397
21
946
909
955
909
507
281
926
388
753
201
625
972
992
445
995
726
686
963
80
498
470
919
140
551
554
961
319
471
619
179
938
70
324
609
75
797
962
22
572
560
385
57
228
423
801
170
818
237
313
338
709
689
976
277
47
475
504
462
550
750
440
876
57
211
439
537
94
286
188
424
538
761
380
446
990
941
52
48
824
998
136
949
531
153
404
190
405
192
450
646
717
135
875
361
104
798
832
277
483
747
53
937
109
671
215
33
951
287
984
719
302
495
169
472
512
72
244
608
770
43
256
184
344
525
798
199
671
543
424
764
76
148
479
72
302
18
152
839
133
199
787
445
790
865
952
892
870
359
593
170
459
200
955
202
384
245
911
509
830
600
120
50
148
255
367
507
994
149
870
834
203
505
233
246
966
396
381
283
41
597
381
231
150
244
719
856
91
124
328
195
443
984
11
998
331
251
20
214
238
287
124
774
874
592
619
502
85
500
751
483
591
669
467
295
686
345
467
878
214
76
241
722
609
692
590
504
830
155
252
974
455
789
31
844
443
739
160
437
300
834
751
218
99
854
474
761
731
348
175
275
931
841
659
277
199
483
614
182
122
321
372
71
83
111
674
591
618
917
597
937
895
437
685
767
305
737
927
348
99
533
506
260
901
158
551
211
293
925
951
120
828
921
795
664
974
651
860
182
618
842
743
818
629
322
272
782
819
257
665
173
790
145
523
479
245
213
743
724
975
418
362
341
871
485
184
593
562
539
377
669
506
951
141
124
643
963
795
172
657
176
323
884
280
583
164
511
661
590
871
153
842
698
143
49
38
744
398
845
368
367
752
224
126
177
634
128
11
518
759
840
395
951
31
510
238
124
225
72
723
964
277
812
441
988
852
904
176
48
278
175
494
351
602
814
787
111
313
77
63
140
878
322
479
488
898
839
744
764
202
870
624
764
368
189
195
296
742
822
921
468
394
71
586
159
648
16
137
282
511
753
93
684
279
406
90
563
959
230
791
21
660
103
38
757
995
443
855
243
755
988
938
599
165
958
587
100
630
295
859
724
543
87
825
205
140
329
160
266
386
635
83
214
27
634
998
314
352
985
216
371
590
173
330
897
34
966
679
50
295
52
602
565
508
781
819
709
215
211
918
695
701
319
718
751
475
272
490
177
346
140
347
146
169
396
499
33
352
420
395
348
756
74
184
320
583
51
320
280
777
39
91
221
950
942
199
736
420
68
639
115
844
240
758
642
531
394
41
892
236
396
593
210
64
576
476
256
126
56
547
696
797
514
534
572
393
893
205
707
59
193
188
837
937
65
962
369
235
199
22
15
792
880
863
504
197
394
82
901
772
223
59
854
771
372
774
280
831
976
743
860
832
871
629
702
159
771
807
53
158
840
682
608
331
45
269
375
763
363
714
333
652
344
859
810
706
630
964
64
975
994
406
884
422
531
821
861
770
205
124
395
232
694
603
641
333
925
329
417
659
547
344
818
495
331
968
993
441
287
751
679
659
685
644
872
410
811
518
112
109
247
805
371
457
623
938
829
741
974
888
108
763
58
835
829
692
439
824
828
826
860
887
40
526
882
26
949
329
39
86
418
755
67
902
565
175
313
857
349
607
541
766
756
367
763
613
534
522
247
608
270
382
739
440
67
25
35
928
300
711
477
832
977
166
666
720
740
431
524
140
14
693
495
993
397
793
38
612
956
196
77
616
763
938
480
990
783
878
759
874
147
312
279
769
319
442
63
812
92
89
463
312
596
456
170
905
900
799
761
121
735
710
847
518
179
839
237
868
616
253
292
268
39
264
649
307
616
692
264
111
192
372
192
904
343
357
332
666
153
817
607
478
254
183
57
263
975
747
679
477
429
479
87
191
792
220
979
580
748
188
36
240
240
475
725
653
623
250
406
403
389
733
844
946
613
218
928
794
718
58
288
377
589
775
330
858
915
924
695
791
584
856
620
145
871
611
613
97
822
50
401
751
304
349
804
832
791
576
733
681
897
710
88
582
465
720
793
711
685
886
796
13
209
865
208
285
60
399
822
533
257
422
942
24
321
639
761
437
711
556
38
239
603
300
452
318
463
237
370
900
65
252
123
120
150
564
677
432
987
969
714
428
405
428
597
877
423
727
54
386
573
151
133
128
723
31
506
142
410
844
84
56
232
383
785
965
436
328
665
887
118
878
703
132
443
867
156
587
197
124
344
899
461
169
760
984
293
254
345
849
612
437
616
579
772
219
400
588
942
337
120
647
279
848
834
128
522
418
372
649
331
237
315
365
827
779
875
644
335
290
305
391
250
400
428
740
113
346
821
583
275
948
629
741
514
369
509
849
848
854
989
678
483
585
707
634
755
288
667
984
740
246
311
508
445
87
729
569
440
701
615
631
207
408
453
976
393
45
966
543
880
820
411
581
674
546
318
108
332
989
716
17
158
833
834
782
724
983
557
198
327
155
400
637
154
249
929
968
48
60
538
111
842
516
982
856
217
890
434
730
875
394
479
328
942
604
13
971
897
801
283
26
37
737
655
170
568
111
681
88
107
900
854
81
70
799
246
529
903
329
597
47
320
499
182
117
757
882
696
45
387
26
54
282
585
107
618
166
832
909
256
885
629
862
345
654
285
944
795
968
934
341
763
10
876
733
166
306
994
595
599
403
920
559
741
36
137
527
670
366
512
945
368
67
21
709
933
941
222
995
223
426
19
121
276
353
29
559
112
61
738
802
819
738
396
503
54
775
888
640
35
950
635
644
793
560
655
625
572
254
92
307
916
700
726
806
550
258
475
536
70
144
897
879
748
268
937
582
926
904
872
573
732
231
476
527
911
342
101
643
81
43
408
964
815
131
341
578
559
671
321
748
979
961
701
408
66
444
32
194
622
826
841
145
689
109
918
601
344
711
493
337
969
640
499
308
580
573
30
372
913
592
852
929
683
146
646
765
604
13
132
983
481
848
946
406
527
233
898
484
496
793
59
458
253
198
560
611
472
213
794
877
676
268
132
893
880
636
329
727
991
297
549
783
256
965
347
330
347
521
877
992
418
672
698
303
382
469
844
654
411
446
501
322
874
478
97
563
231
255
60
146
57
399
670
367
357
693
98
283
113
164
279
904
128
829
943
388
645
960
228
403
319
300
962
576
869
354
973
578
885
258
161
784
259
400
977
81
78
234
875
815
217
225
960
194
370
216
328
827
57
636
117
833
834
15
600
323
456
364
107
491
142
899
86
155
739
43
435
233
860
916
392
580
100
109
684
205
109
81
495
374
230
855
177
726
674
231
166
164
146
380
679
867
150
165
60
925
244
455
712
458
466
632
976
295
360
899
173
354
346
593
400
915
770
459
829
371
953
209
33
37
243
846
319
932
975
870
836
792
490
898
422
148
786
403
289
457
634
118
687
604
333
191
690
591
671
986
700
507
447
542
859
346
478
191
964
496
528
160
260
322
55
204
531
302
326
187
205
650
223
771
796
772
538
795
128
759
265
680
151
774
95
680
118
560
320
530
459
448
346
222
887
470
327
366
317
368
206
820
110
761
220
515
55
446
956
71
693
419
865
580
266
309
266
942
542
637
557
565
334
936
371
687
500
851
809
380
49
689
439
651
520
285
223
736
488
873
61
242
632
866
881
915
597
576
345
504
212
502
786
275
240
57
164
821
21
24
587
238
350
619
777
410
368
378
945
644
167
640
31
635
571
890
424
978
619
26
430
129
332
397
620
281
286
515
529
75
285
435
640
544
361
802
568
210
664
128
545
583
568
68
810
440
207
582
105
589
93
235
50
516
941
698
744
420
347
530
981
384
46
876
289
298
185
900
777
10
189
932
942
549
716
415
406
582
401
710
125
497
686
111
336
939
527
113
72
267
741
149
369
941
379
113
120
936
904
608
254
543
126
905
568
741
135
97
969
320
921
395
901
780
373
232
371
849
457
845
661
236
773
535
711
666
552
702
165
906
131
33
239
95
760
90
604
580
229
502
828
335
744
387
86
960
29
382
833
326
742
384
230
89
637
788
901
877
882
105
527
626
57
338
222
894
102
329
913
396
593
271
360
943
319
657
994
486
287
822
437
79
834
492
745
755
693
565
51
804
922
675
395
171
197
210
685
105
362
826
936
610
210
967
48
957
772
459
847
116
676
529
539
456
178
341
901
791
313
435
496
652
342
87
422
294
699
908
958
459
779
209
873
269
358
119
760
915
540
982
845
335
28
935
98
890
806
831
623
390
319
258
611
395
490
364
532
914
810
370
995
459
985
377
724
302
254
924
686
274
772
282
403
538
770
460
331
22
854
421
513
898
365
194
182
241
573
771
197
886
62
421
416
476
726
432
407
631
400
156
420
947
35
601
41
308
380
839
862
322
383
491
358
684
106
702
773
19
287
468
846
709
531
692
149
827
815
310
287
19
84
721
967
32
794
134
300
400
710
243
594
486
521
282
32
603
682
376
839
703
535
806
242
255
546
180
164
786
406
373
342
871
572
86
839
801
682
668
951
659
949
130
761
590
733
742
992
666
220
873
41
133
804
735
751
205
374
358
859
716
597
86
135
160
665
774
116
727
303
969
641
654
122
411
961
976
495
181
971
562
524
590
598
182
549
957
272
285
141
126
531
759
140
699
508
921
656
623
476
724
174
255
285
55
384
37
247
84
483
618
428
308
143
686
429
751
819
105
710
933
119
285
269
840
722
789
244
645
451
696
782
144
134
551
677
605
532
248
36
664
794
525
732
363
993
314
838
559
205
836
35
831
756
261
75
437
479
941
330
253
41
327
971
590
475
346
226
940
415
485
919
899
551
877
989
805
942
764
534
467
122
686
671
844
460
668
534
288
71
173
810
240
478
435
615
802
462
633
642
247
199
988
30
818
656
953
983
725
20
176
475
686
355
235
917
797
798
477
890
883
14
351
711
724
240
675
961
35
980
627
261
796
364
18
414
872
881
213
37
503
121
576
954
76
373
736
337
150
891
950
564
753
16
872
750
445
501
27
390
806
699
493
523
886
234
68
314
677
927
57
145
354
139
411
542
550
252
900
32
340
541
851
174
855
183
405
85
834
605
944
974
841
293
333
468
38
23
745
634
701
20
238
240
439
961
307
936
970
446
337
614
404
607
436
788
100
406
175
640
771
296
786
405
554
451
741
212
442
268
671
783
892
89
764
427
435
270
851
513
915
630
131
162
699
368
594
39
80
252
360
761
199
776
972
659
54
569
535
867
320
979
814
808
291
68
13
497
965
268
79
872
456
207
16
763
767
316
101
545
607
623
759
15
499
806
771
911
434
514
122
621
191
101
158
770
40
633
193
278
923
555
445
244
568
766
708
561
706
189
552
971
17
525
499
686
902
302
269
327
244
764
68
786
11
687
516
830
610
714
384
56
219
298
369
724
791
421
583
483
393
33
678
16
975
95
936
207
30
15
628
935
799
339
596
288
132
451
963
87
13
718
261
915
210
920
831
43
193
470
23
76
430
602
208
705
906
710
227
820
347
799
26
895
343
263
955
644
11
279
885
846
985
896
973
266
99
685
627
799
594
987
591
973
586
390
208
769
66
233
39
605
303
886
81
995
997
837
112
185
280
21
304
597
653
61
757
918
950
779
571
411
807
669
640
50
639
952
972
435
538
380
60
94
272
555
776
190
218
747
781
154
485
982
564
945
636
868
795
409
102
254
926
765
286
971
953
308
88
690
158
93
727
728
863
92
139
331
251
896
887
541
832
194
964
537
867
417
716
731
818
779
318
668
216
833
967
477
153
316
477
589
181
768
193
382
79
946
670
34
550
663
702
16
626
10
703
232
249
484
224
746
804
724
177
636
37
492
506
486
561
135
125
480
699
287
347
935
143
843
714
535
465
490
722
817
397
287
412
970
760
441
883
707
136
976
921
727
229
253
90
509
49
755
173
602
760
620
952
260
51
585
783
93
939
251
120
240
784
533
949
929
169
948
261
543
555
626
122
99
25
622
759
239
754
285
211
972
566
597
501
628
185
824
434
856
246
227
271
426
243
80
668
405
717
577
841
953
628
747
821
78
205
833
137
607
30
402
275
879
850
160
882
69
553
80
314
806
235
477
394
913
591
46
991
430
806
277
926
542
819
683
825
520
919
77
251
516
252
468
788
681
821
537
935
991
458
47
925
994
176
547
992
842
538
165
340
122
949
461
233
344
467
917
258
223
499
585
767
591
214
661
828
483
193
956
252
145
965
92
295
277
123
816
243
358
472
400
836
719
712
326
711
687
457
291
581
310
557
412
879
564
472
474
308
317
737
400
280
545
689
529
53
403
809
907
898
504
147
347
598
620
315
410
621
161
649
831
473
716
713
847
823
387
825
437
813
483
11
906
503
810
174
414
555
709
302
262
335
555
573
11
968
440
336
948
867
105
297
683
76
731
344
653
677
895
882
331
186
750
522
663
997
754
631
321
825
370
809
959
254
799
590
578
170
572
608
890
471
806
461
611
430
990
743
775
489
241
270
420
970
364
321
577
28
778
578
837
709
774
924
234
721
263
571
453
349
507
769
422
651
842
582
34
80
145
290
678
188
129
403
831
612
456
841
935
607
506
744
264
45
288
563
924
220
557
902
19
78
257
675
69
792
637
855
982
756
982
705
91
215
349
823
106
717
898
390
807
418
114
459
880
602
26
873
232
242
925
286
391
382
631
928
176
500
855
223
810
125
311
937
428
430
813
809
788
899
784
932
221
721
700
985
809
660
918
757
920
153
562
836
581
791
482
658
897
255
908
68
616
33
882
654
219
150
219
242
703
388
860
966
832
220
114
194
187
871
277
587
670
227
68
609
269
957
839
212
823
254
940
241
906
509
217
853
858
789
579
977
491
304
919
358
365
372
643
96
446
664
253
545
402
290
805
43
804
701
843
490
325
486
494
475
450
302
913
321
628
630
325
137
614
960
959
589
796
580
457
963
687
454
848
762
875
45
979
620
581
650
321
649
694
863
317
843
347
293
705
960
753
639
197
282
620
562
750
732
156
680
533
563
195
673
170
977
348
180
857
477
821
427
825
353
826
88
610
187
590
317
298
526
634
716
215
575
753
35
816
511
765
294
106
285
649
979
540
138
128
702
381
773
238
199
952
933
418
34
606
359
197
451
348
478
495
578
715
633
445
397
871
332
240
308
67
327
340
54
185
323
80
516
464
779
612
843
970
124
203
92
324
295
725
554
796
29
811
882
312
690
877
153
476
922
782
262
305
90
261
670
970
597
135
885
10
556
874
544
676
643
891
72
964
407
98
442
968
472
282
11
786
232
650
38
416
604
675
505
843
418
55
104
126
396
757
673
762
698
593
709
632
507
195
343
127
122
501
407
409
592
11
419
882
13
482
969
837
408
618
415
390
761
612
811
648
991
715
87
120
23
136
951
655
731
576
299
416
942
705
160
243
80
475
490
187
655
991
190
71
931
987
62
843
114
977
535
202
462
540
133
437
448
720
605
862
200
224
314
828
129
333
982
501
354
757
587
570
333
267
235
309
18
145
530
422
915
614
984
108
443
111
310
919
98
112
188
707
529
324
64
300
878
895
482
873
713
999
986
785
442
542
413
577
924
934
684
847
652
533
125
676
262
785
794
266
496
967
350
902
466
137
490
906
257
499
128
696
668
33
700
132
654
214
450
730
121
883
483
477
924
928
415
740
310
114
299
672
696
42
536
419
82
807
798
15
365
588
491
460
142
282
556
719
641
184
104
968
984
452
45
894
84
105
830
297
894
755
811
397
183
949
894
826
371
298
379
643
700
330
393
353
82
732
345
855
783
50
375
363
194
634
630
278
941
768
858
370
882
101
577
945
956
183
88
864
217
403
409
404
846
635
797
764
230
616
588
586
380
374
77
157
384
527
873
372
101
13
534
13
474
441
156
588
191
503
919
156
600
720
644
702
144
788
582
654
114
123
523
527
99
677
777
872
490
75
818
848
656
374
428
517
147
184
665
477
330
833
155
711
345
179
974
244
983
496
960
825
494
960
526
315
577
787
375
49
122
777
783
589
645
501
56
550
321
673
329
108
944
523
719
351
249
854
788
367
152
501
831
952
284
66
57
481
965
91
135
131
666
723
160
577
636
893
776
47
272
137
919
104
894
219
614
618
979
445
739
966
838
317
764
913
505
598
14
882
555
183
37
919
144
362
438
270
197
300
507
146
509
51
860
882
882
918
828
287
524
682
601
824
418
17
563
91
598
974
891
494
216
653
772
794
668
268
200
294
832
29
318
539
628
377
179
391
999
513
921
555
963
552
276
57
655
560
705
650
447
828
397
228
325
470
544
542
582
350
70
820
248
334
694
617
762
203
352
161
548
314
735
776
495
947
179
285
218
591
133
902
764
683
33
328
128
901
867
507
926
248
316
46
770
654
565
990
93
655
394
958
49
761
710
791
159
95
791
921
618
415
112
31
713
251
699
916
445
627
191
172
376
222
504
849
533
512
361
77
139
34
614
464
530
573
143
230
431
420
976
951
326
894
661
267
518
545
907
790
766
50
60
87
749
164
90
554
611
49
382
633
212
246
70
937
31
387
752
146
585
496
389
459
52
75
504
286
650
181
676
753
456
303
671
14
424
271
694
751
547
667
533
535
580
156
719
671
358
670
271
336
99
228
830
827
831
970
649
553
267
614
382
91
30
185
495
510
516
361
292
407
843
885
312
934
965
46
945
819
475
682
85
487
404
761
207
838
108
80
307
968
808
846
789
396
715
805
223
525
560
522
123
721
496
371
183
578
301
46
102
199
554
62
229
849
450
862
911
476
786
138
599
813
539
95
426
734
74
637
735
98
572
34
270
297
763
605
474
402
941
140
609
568
86
802
500
840
598
403
351
922
716
555
175
703
553
705
790
267
881
341
489
769
414
925
401
656
560
344
880
440
898
106
33
591
321
227
497
821
483
185
791
235
797
970
790
299
30
479
160
266
725
139
126
499
949
640
957
107
757
52
853
672
223
679
347
668
965
603
856
142
578
287
196
617
337
750
811
392
194
655
595
636
892
487
516
914
667
534
945
649
879
66
181
929
744
575
642
688
860
627
189
228
801
86
654
351
777
553
825
498
294
418
551
353
966
878
259
381
952
432
890
653
195
615
787
714
715
770
548
566
533
272
322
198
905
417
620
594
237
871
362
75
238
342
134
220
63
532
980
390
689
764
23
570
797
380
352
209
321
173
312
392
845
473
483
796
183
147
113
210
890
95
910
895
48
67
273
501
342
846
909
408
864
232
416
406
22
520
314
315
658
898
805
226
500
51
398
645
862
354
533
559
956
692
603
497
952
950
121
545
264
835
892
771
926
771
125
570
344
45
22
505
644
665
431
745
899
983
263
151
362
404
786
645
545
840
746
595
724
240
644
846
871
526
998
370
396
490
579
577
295
16
474
606
184
829
350
55
254
750
593
905
726
117
609
877
503
728
13
308
252
128
272
703
899
955
554
177
177
885
809
216
180
622
211
906
862
805
496
295
658
127
284
474
603
778
864
794
590
379
451
55
135
246
368
235
205
525
919
554
547
438
21
525
857
630
266
102
643
496
972
625
190
771
874
187
356
804
309
778
406
239
156
580
816
558
179
965
591
805
169
934
29
894
52
756
684
522
795
754
995
795
859
306
270
284
811
824
556
35
402
519
116
114
290
855
21
315
118
735
559
841
678
398
758
596
754
642
914
232
293
772
317
178
581
883
641
277
559
285
93
56
503
670
152
888
846
345
616
891
381
36
610
890
831
940
540
143
804
105
716
582
517
117
230
190
817
782
87
753
744
432
146
497
135
587
622
444
777
980
690
375
302
285
611
264
955
731
631
46
458
762
834
787
994
907
333
51
647
834
405
459
93
206
600
881
125
562
948
926
28
774
326
37
436
133
806
372
215
984
904
523
147
230
618
495
664
819
597
514
718
811
31
761
208
248
577
49
439
487
185
566
58
333
909
597
468
288
542
29
601
663
912
643
863
322
471
989
361
821
959
964
739
369
779
290
21
709
54
60
489
176
568
150
455
698
537
772
619
539
325
740
862
21
290
800
791
982
761
17
962
202
981
53
705
995
474
947
73
803
463
766
779
925
79
721
289
438
985
88
355
389
649
18
190
606
126
799
146
240
79
941
321
973
445
557
66
210
241
361
475
109
860
240
211
666
682
319
361
440
889
960
482
176
655
760
367
762
756
502
629
569
181
129
997
829
815
291
280
629
272
387
83
193
989
474
312
632
271
258
252
442
37
409
938
37
691
161
345
935
390
964
153
187
856
203
266
835
791
61
311
344
969
535
978
839
508
797
846
538
206
60
602
908
584
338
382
944
789
203
169
323
345
728
257
89
420
806
790
127
45
503
108
674
297
432
788
132
695
463
181
381
958
161
158
961
799
718
491
539
949
524
232
520
403
435
729
476
748
902
612
401
722
527
743
513
128
573
343
703
678
515
270
417
289
632
405
105
516
670
563
286
557
367
132
994
542
811
355
692
187
850
867
93
883
352
840
871
158
816
973
340
787
702
75
762
924
439
274
128
43
728
638
894
136
605
572
283
449
905
852
121
824
95
973
254
201
283
546
989
410
373
772
775
596
80
793
866
934
54
102
70
765
108
903
333
850
415
60
558
815
151
16
966
878
67
447
177
992
801
764
934
530
396
486
551
937
240
521
197
681
203
295
378
319
873
264
418
610
555
243
473
660
223
715
840
862
394
589
439
106
166
787
985
70
747
781
494
405
678
812
776
852
812
655
674
43
702
422
601
361
825
518
250
131
158
837
235
171
72
342
757
157
245
369
743
159
422
757
553
294
118
334
253
830
723
259
367
112
464
642
196
705
726
504
50
105
119
312
57
123
959
19
964
133
487
384
88
266
754
771
920
178
592
311
823
141
430
340
12
344
597
973
706
536
537
179
652
826
286
332
29
828
547
581
331
944
65
385
250
267
945
929
437
288
793
105
833
511
14
451
533
222
103
655
672
654
576
781
774
332
289
585
830
428
335
301
170
807
441
470
470
973
988
185
99
454
617
601
477
114
487
137
587
909
616
513
72
37
197
41
501
542
681
868
843
52
601
727
233
355
197
438
306
404
722
865
775
948
440
387
924
896
791
302
938
511
298
775
972
701
159
588
51
584
353
861
916
260
140
376
557
202
434
750
371
355
959
650
72
684
501
407
755
894
471
931
890
733
300
303
346
566
925
542
328
750
607
603
296
793
872
685
263
839
430
565
788
473
738
758
263
872
193
335
403
795
859
849
174
530
889
176
777
150
383
121
789
249
221
675
987
176
813
793
323
175
647
486
640
276
625
374
217
565
103
292
974
422
454
470
759
95
770
79
804
912
37
387
82
996
261
767
70
962
160
283
392
543
672
899
125
822
305
451
25
721
921
463
849
597
388
246
38
743
332
826
545
291
638
581
187
546
532
158
314
599
299
221
89
785
903
347
256
14
766
337
382
179
514
597
182
402
235
490
927
516
899
488
758
275
304
416
709
228
780
765
899
434
82
940
965
832
61
291
469
492
12
573
482
688
657
168
937
378
883
647
247
106
542
542
471
591
748
52
751
749
536
981
30
576
492
149
36
830
402
939
39
57
355
60
896
997
730
993
405
987
799
837
109
310
50
387
291
840
273
128
452
36
464
774
649
471
927
638
835
537
987
332
412
306
289
147
736
913
970
150
708
777
917
769
792
786
95
188
48
475
607
274
632
599
360
560
312
725
698
558
400
943
832
98
86
680
535
707
957
749
467
287
833
406
516
693
985
350
160
557
658
853
707
276
45
208
79
341
659
118
490
938
45
771
595
336
92
985
593
568
522
249
233
929
985
365
772
854
43
755
64
366
277
25
50
188
551
745
904
192
756
818
37
158
459
850
388
310
640
247
695
413
661
600
975
302
700
502
50
403
160
506
791
592
328
67
108
470
90
108
961
946
983
840
252
291
624
204
791
498
919
744
872
455
717
364
483
552
45
845
786
497
427
89
829
452
568
255
267
205
318
360
839
606
690
337
875
964
518
236
334
575
975
964
528
931
629
223
377
847
787
253
966
918
505
352
658
997
737
509
363
600
340
881
251
662
915
245
661
709
187
322
896
762
105
539
102
407
448
990
616
347
139
538
293
314
50
842
415
884
660
700
50
312
398
728
769
498
261
602
474
811
878
154
335
347
767
434
518
893
107
170
578
846
773
850
850
608
364
790
728
968
763
308
594
779
987
550
673
975
171
552
371
91
188
971
619
354
722
120
436
665
650
314
577
721
525
182
959
359
911
241
143
535
997
186
923
535
456
496
906
443
830
563
139
49
257
361
806
669
53
396
961
991
236
983
988
328
274
693
435
985
576
782
925
445
809
478
669
404
811
19
466
615
789
295
90
502
264
52
429
898
17
393
391
578
560
716
325
943
140
559
387
199
418
386
914
602
74
779
484
753
392
856
541
86
505
979
631
53
204
364
167
913
45
525
268
890
699
322
896
836
439
954
871
599
136
28
105
729
410
788
619
727
972
713
346
584
797
83
295
126
879
657
614
254
418
741
752
696
331
714
265
137
786
539
988
659
237
237
759
423
271
333
314
757
992
312
552
349
726
676
762
892
885
63
245
287
422
900
390
123
510
87
676
134
177
606
307
512
473
575
433
462
483
706
645
935
538
633
178
122
824
784
476
16
650
696
227
32
195
553
728
573
24
46
158
75
565
35
380
344
79
959
83
716
181
93
776
334
244
247
787
186
17
314
560
494
891
765
276
599
756
646
32
394
635
369
543
160
532
380
396
238
44
58
163
407
811
119
361
36
919
90
798
266
407
667
920
115
656
775
57
573
649
846
803
694
497
665
950
66
679
407
471
33
458
287
324
606
698
985
127
229
942
293
257
134
426
218
929
47
574
546
235
467
985
694
769
600
290
262
556
276
368
869
928
466
748
184
939
488
890
570
655
115
684
80
566
72
611
303
481
410
613
553
24
903
336
238
32
181
695
955
245
298
790
866
144
176
725
540
121
985
510
195
75
107
270
513
509
228
332
961
58
544
612
16
901
300
366
984
578
778
820
552
670
436
968
993
91
16
103
238
728
85
533
934
274
182
442
115
323
45
139
159
694
347
456
262
196
348
67
573
529
512
18
63
909
791
419
468
871
606
120
21
242
467
773
43
69
912
235
966
754
636
460
365
927
68
280
365
463
185
357
367
414
347
773
551
649
475
37
607
681
336
295
289
747
104
967
375
926
998
34
634
672
825
492
874
617
746
414
341
694
296
639
602
608
738
730
498
219
686
320
941
881
514
877
674
743
87
55
493
476
515
242
316
385
459
31
601
695
132
765
946
262
767
675
340
699
559
615
636
476
151
773
36
927
997
205
605
150
659
418
469
572
922
230
245
375
372
226
73
227
926
102
509
18
832
917
590
289
894
761
857
516
394
272
886
785
206
399
910
320
601
943
73
310
553
843
125
178
614
979
539
217
753
122
327
393
525
328
99
854
649
460
870
486
787
713
367
752
472
116
913
181
692
172
329
128
51
98
663
424
646
446
490
410
477
810
23
831
967
726
920
676
118
668
741
637
841
642
715
667
23
793
252
720
713
699
813
899
954
177
865
622
177
224
267
835
623
379
950
308
575
357
801
807
617
372
51
573
715
97
508
520
279
737
487
261
970
211
725
371
638
53
156
432
237
590
464
814
749
27
189
216
914
117
459
913
349
442
302
478
342
564
931
395
796
460
104
229
42
441
371
863
307
128
259
847
256
327
214
804
484
302
364
818
502
478
723
825
543
678
727
210
363
174
39
359
123
169
267
402
266
93
882
537
509
310
898
98
955
152
500
752
178
250
590
749
574
517
567
956
715
129
227
350
967
636
474
597
264
523
701
693
923
305
980
703
534
972
501
34
83
26
93
353
475
448
88
390
137
241
552
854
411
441
194
808
679
469
768
204
98
442
900
260
731
677
713
96
132
833
247
591
737
279
305
875
10
645
396
488
216
630
321
743
48
651
207
745
152
310
335
368
908
297
335
121
377
562
908
737
385
268
288
270
427
146
751
89
38
983
963
598
434
526
165
220
721
588
685
766
340
720
487
888
614
13
133
169
828
991
23
367
261
995
61
39
890
806
267
726
510
105
606
192
97
830
461
522
889
194
520
417
288
577
489
664
982
603
226
377
944
606
14
989
885
305
165
408
250
858
485
727
567
714
596
449
681
433
951
111
359
587
609
664
443
656
660
888
352
388
765
515
344
172
410
960
500
507
887
14
54
388
630
215
675
887
623
131
77
877
786
668
183
217
200
59
906
418
402
940
595
807
84
831
600
772
59
296
537
830
866
482
578
27
433
493
288
876
838
855
475
233
77
868
537
810
761
111
913
403
293
501
67
518
913
163
104
445
753
922
805
314
363
174
702
551
940
35
757
455
161
718
374
721
889
81
621
154
583
676
928
346
292
957
69
648
848
651
796
514
737
603
176
972
71
764
706
352
75
229
533
592
28
140
419
152
295
524
946
817
351
538
928
91
736
669
872
727
829
884
495
734
925
571
484
601
996
966
443
563
987
207
58
734
316
736
543
222
103
399
612
53
873
78
365
857
759
10
660
69
985
134
811
347
996
280
519
400
638
233
313
44
224
842
192
517
281
509
552
272
230
977
849
777
24
602
648
855
53
840
206
100
883
987
735
126
791
67
874
252
266
556
932
913
326
859
422
821
612
632
947
482
508
366
251
30
408
35
207
798
28
571
465
268
762
974
94
626
116
816
353
338
409
695
706
798
425
612
352
306
185
384
39
106
693
607
271
159
886
951
713
230
814
256
781
506
373
655
602
979
598
759
749
26
993
149
660
85
982
739
381
528
83
53
161
554
745
52
860
855
775
532
756
508
693
960
226
473
543
264
743
904
659
270
222
190
614
606
225
516
469
273
740
52
133
300
323
387
850
132
387
757
810
266
582
960
81
69
622
711
306
412
304
383
423
422
179
775
350
281
952
179
515
776
956
889
737
560
726
229
601
710
473
883
564
633
622
362
797
629
525
509
65
131
430
232
104
435
943
977
674
672
676
944
38
427
777
884
852
377
615
667
451
107
938
85
869
526
312
132
698
800
663
831
246
44
894
262
970
151
373
41
230
481
892
294
385
407
357
514
251
837
982
56
60
120
792
977
219
219
19
417
310
994
672
897
285
879
498
80
903
810
640
340
791
966
216
331
960
777
65
617
762
933
511
206
46
43
706
317
599
146
412
804
85
114
100
252
256
537
476
812
540
269
581
760
685
368
191
53
23
630
416
67
855
367
532
630
611
313
495
862
138
246
554
991
804
38
608
63
463
646
774
849
349
350
765
688
627
530
986
87
623
115
186
844
343
772
412
270
242
869
177
496
413
719
36
839
513
157
504
337
474
428
550
692
199
776
51
30
935
410
583
16
838
978
875
900
241
656
137
576
145
309
133
722
685
538
455
103
271
780
135
558
42
743
968
99
883
145
284
478
24
451
230
340
365
975
342
77
521
89
604
278
778
721
232
841
644
535
771
89
45
643
730
996
64
78
805
277
926
142
382
454
216
974
442
724
205
471
69
42
154
377
714
906
303
446
191
779
596
605
960
509
547
418
169
967
319
809
794
424
290
525
688
309
774
733
334
16
918
383
605
33
255
986
17
259
332
147
703
813
960
27
689
526
78
953
828
284
833
115
63
729
989
260
872
171
158
64
970
419
63
79
842
242
316
853
108
575
970
992
951
15
817
213
85
10
254
623
932
183
258
866
325
11
806
693
801
641
664
222
104
95
973
996
915
981
711
124
320
259
774
143
267
619
508
862
334
390
923
222
28
193
511
263
217
61
390
10
731
192
161
718
737
74
82
634
357
43
59
261
109
836
527
845
165
398
694
826
22
744
320
253
259
817
924
256
544
407
537
301
522
896
276
341
67
82
458
352
632
148
576
294
281
261
271
821
385
337
790
964
758
110
59
569
714
839
981
592
345
489
736
328
316
80
415
114
473
864
732
693
786
172
123
314
606
494
490
690
641
677
817
628
60
967
121
396
169
621
649
767
173
599
87
85
620
978
576
913
25
846
637
442
698
66
504
856
875
993
968
314
367
278
789
808
535
888
796
246
744
891
779
857
40
830
738
22
676
530
510
54
310
277
194
103
787
698
776
270
885
63
587
892
409
264
370
384
618
171
866
780
511
755
74
40
530
572
977
868
392
437
509
934
817
801
40
739
698
451
511
920
375
258
427
299
678
565
436
154
591
344
754
641
582
854
697
664
998
692
362
628
758
301
734
438
435
190
825
340
694
295
155
179
351
923
667
248
40
375
620
447
622
734
894
192
310
586
275
829
366
201
478
31
111
836
56
735
396
69
597
472
59
935
608
332
339
312
798
126
675
32
414
55
25
799
78
492
409
409
409
125
988
292
993
277
914
769
248
783
706
80
934
658
577
214
390
643
391
134
376
778
876
668
319
11
170
45
240
537
316
302
624
356
684
657
702
744
928
51
418
96
739
765
289
636
728
898
753
159
580
984
679
985
735
524
359
866
209
389
76
931
677
365
452
810
369
487
217
237
557
716
562
350
603
130
218
653
623
339
403
299
836
137
635
848
683
710
556
471
20
275
853
563
722
294
159
715
735
479
931
813
230
306
551
219
726
835
455
942
774
145
126
435
438
60
638
833
28
688
292
191
163
161
933
359
134
960
597
420
206
559
520
111
682
560
990
700
303
434
574
513
283
281
908
104
878
166
145
680
510
692
609
899
321
481
235
845
673
697
786
723
569
787
300
279
186
26
834
851
430
877
410
694
780
461
596
187
621
196
164
639
678
181
64
686
32
596
567
234
612
644
360
707
694
303
319
383
314
250
997
986
382
279
141
381
879
432
69
962
154
588
50
693
348
103
433
339
487
384
944
462
617
831
312
555
303
226
657
115
934
896
426
95
225
926
608
183
776
127
801
79
75
904
576
176
831
318
27
280
162
262
458
15
808
768
704
84
151
731
681
136
67
798
775
22
133
89
29
906
375
636
201
38
67
891
896
745
661
803
429
490
384
543
979
618
342
296
401
113
917
46
322
277
519
855
287
258
366
672
659
137
466
983
300
593
92
522
290
259
168
586
427
946
606
650
832
185
118
601
105
12
456
543
427
41
189
854
924
716
891
809
413
415
751
596
155
923
907
422
296
989
934
544
216
705
569
408
263
421
68
820
825
291
249
378
666
313
730
200
788
100
64
35
746
446
954
371
389
611
176
430
816
523
921
825
607
390
958
70
191
593
175
738
998
140
411
272
470
375
58
834
292
830
743
354
799
219
523
115
75
742
489
548
644
773
268
226
180
356
796
250
71
277
709
149
913
532
562
302
598
386
84
929
978
608
94
312
41
701
650
554
658
94
400
173
315
726
62
525
744
568
126
747
974
823
445
396
628
630
791
691
733
613
743
40
139
296
407
370
207
649
288
283
94
697
908
856
889
534
96
396
493
782
609
794
734
212
263
891
931
33
185
51
947
231
812
321
489
315
597
459
171
838
803
603
298
731
178
945
291
384
163
856
857
132
133
109
338
984
190
755
67
159
378
173
676
836
985
561
626
818
496
940
312
935
983
336
481
939
14
506
149
207
52
524
690
305
943
759
658
867
145
89
678
810
683
528
370
881
95
183
20
364
625
171
287
82
705
738
16
168
801
817
489
298
214
740
748
698
96
841
595
13
750
129
938
613
13
16
38
44
423
367
293
142
97
906
712
917
143
15
640
863
583
548
440
175
221
889
986
406
227
718
904
606
935
363
24
63
129
294
767
10
642
776
253
627
192
660
120
268
246
308
658
308
740
930
414
139
505
961
884
115
512
403
791
824
761
142
870
344
554
52
973
248
913
864
61
110
915
260
397
139
603
92
716
962
249
251
849
589
186
221
372
451
233
393
92
311
49
854
969
808
135
233
306
591
405
237
752
875
933
838
233
121
184
660
105
357
546
461
782
122
328
255
35
517
143
957
374
707
987
788
874
478
35
409
614
303
538
842
148
935
724
828
270
389
306
929
980
463
902
94
579
822
773
477
916
482
384
153
774
210
675
144
889
541
92
282
734
163
250
298
934
247
658
500
350
247
549
622
958
900
846
831
452
671
29
779
289
192
262
792
110
827
57
426
317
206
744
670
285
212
193
428
118
347
974
652
146
849
899
419
566
987
605
587
97
305
341
383
660
832
978
259
436
977
244
795
483
984
695
707
542
798
304
669
688
141
820
651
628
489
48
952
377
72
583
972
170
533
734
773
882
686
175
501
169
90
498
965
895
254
62
215
514
416
287
822
745
70
405
184
165
305
768
60
915
345
838
315
78
884
142
807
476
111
197
681
568
275
920
809
938
774
786
566
820
813
636
882
789
295
362
38
453
261
929
11
686
663
100
444
209
296
626
508
551
613
657
125
147
180
375
36
451
811
539
936
126
87
354
327
434
725
358
433
824
823
428
481
336
366
226
438
364
533
188
63
638
516
967
324
14
127
789
533
978
320
384
972
907
716
555
979
654
96
554
232
448
992
51
117
561
266
744
118
882
799
321
549
932
980
403
994
415
318
341
809
201
110
349
260
31
435
987
24
796
821
894
419
340
570
72
815
680
158
713
410
349
91
675
307
510
643
371
755
586
975
147
379
238
357
682
171
778
446
880
299
622
110
429
922
639
992
254
174
518
131
629
510
282
45
631
760
524
763
869
406
110
455
289
760
712
191
828
285
600
887
108
855
218
472
665
927
199
17
830
20
958
953
416
797
616
362
240
779
845
478
974
921
173
496
263
344
831
237
278
395
941
881
720
241
724
471
814
770
18
183
22
380
687
862
933
662
525
129
964
924
357
942
900
980
235
658
249
801
756
745
572
985
276
419
845
240
163
964
618
829
201
688
922
841
438
728
268
951
98
936
212
545
965
895
528
816
309
95
270
585
51
631
562
845
147
800
614
511
542
759
495
231
225
321
171
77
566
842
323
421
329
425
518
68
561
351
216
165
19
156
310
648
737
729
443
424
559
628
857
231
48
254
413
378
222
947
236
828
814
148
708
382
806
379
280
810
246
789
249
468
846
375
761
148
57
745
613
479
348
976
152
169
986
919
676
821
268
905
340
80
944
449
828
62
931
690
164
960
876
89
738
433
369
573
373
706
622
152
75
896
184
561
276
848
789
526
509
220
209
614
205
228
612
195
694
649
562
219
329
209
537
68
364
296
591
486
710
776
104
634
98
839
378
199
145
704
10
582
740
631
255
783
65
835
745
92
556
358
650
455
135
911
456
42
418
52
983
875
79
995
678
332
102
802
786
310
485
373
547
366
179
33
395
855
83
459
721
512
129
352
930
847
853
525
327
40
778
962
971
167
876
860
645
803
56
603
906
119
206
88
904
923
395
673
779
682
696
844
238
429
755
389
317
742
472
273
966
93
130
548
806
227
118
198
178
781
936
616
35
21
650
207
415
966
849
904
739
571
854
67
697
96
918
687
133
682
259
930
880
669
685
649
716
403
814
964
544
107
529
917
683
747
975
91
229
309
381
891
968
883
525
12
721
440
939
460
715
949
632
985
575
543
700
670
154
155
671
367
924
280
426
526
437
188
277
605
591
72
363
324
999
321
23
941
894
782
459
522
984
851
360
975
671
243
387
451
193
858
764
786
601
500
436
79
123
534
772
289
796
977
547
133
224
104
812
846
849
754
22
439
473
242
845
958
542
997
268
424
381
657
877
683
747
112
58
136
423
161
939
738
294
263
250
36
983
387
54
881
502
787
584
813
332
817
264
494
889
23
921
619
41
835
402
471
617
147
245
133
567
770
587
492
425
711
532
288
98
738
848
287
28
449
104
841
92
997
793
985
795
445
274
378
324
906
295
241
573
659
320
937
649
497
736
861
844
821
387
703
189
896
564
302
670
568
478
835
526
993
888
317
501
297
430
117
335
249
294
340
256
582
680
466
262
47
551
773
525
120
170
872
49
681
833
27
197
971
406
480
603
278
648
253
529
685
336
389
770
476
600
508
861
355
733
134
745
731
232
47
546
378
349
133
676
633
269
212
552
433
897
795
16
694
916
249
697
61
850
234
485
38
411
739
718
585
402
940
446
347
795
382
152
627
632
609
624
799
712
385
390
467
51
767
541
301
120
273
625
107
395
637
742
662
243
892
437
326
656
342
353
186
958
621
582
549
282
310
173
388
398
187
204
822
34
573
815
747
446
396
219
87
193
14
393
262
362
543
828
569
650
540
510
571
825
400
56
303
539
199
882
457
256
383
24
243
353
464
295
770
979
165
334
478
174
156
162
507
913
563
930
861
472
908
319
601
34
855
763
140
207
458
850
25
895
214
879
520
382
228
670
397
509
178
479
535
775
419
573
476
335
299
239
174
54
425
11
103
859
69
434
76
777
772
661
882
312
633
944
154
822
573
241
315
719
907
789
483
868
792
262
280
932
100
265
97
89
867
873
19
443
903
234
756
640
112
92
818
785
891
990
657
829
792
358
648
480
706
76
984
733
336
699
485
197
940
482
362
985
914
694
939
935
358
785
519
724
333
886
366
341
533
852
320
603
641
996
504
122
924
782
109
24
406
293
577
735
999
524
518
515
615
265
278
389
129
601
894
143
625
782
61
480
351
794
129
646
380
581
154
801
664
491
538
210
140
240
474
26
763
312
127
521
733
204
22
653
359
364
977
651
753
746
639
620
216
717
541
652
976
391
948
671
203
849
842
25
530
582
521
202
459
501
464
555
723
40
446
51
214
314
395
550
638
717
858
677
867
428
232
52
18
59
804
437
646
829
782
910
690
852
56
693
35
839
828
704
772
661
278
918
314
165
214
282
467
17
566
441
762
22
669
739
554
97
956
628
143
284
110
101
777
860
733
552
250
537
487
355
140
334
522
447
146
892
612
947
228
670
235
796
999
372
89
86
326
627
996
732
922
353
119
736
606
707
540
282
389
417
678
514
969
765
266
859
907
650
379
389
481
216
746
840
895
582
767
206
494
921
625
777
974
935
418
692
255
759
983
793
471
921
666
638
538
988
64
971
232
817
532
541
698
640
211
330
948
285
101
215
79
352
914
154
868
33
825
713
433
346
944
686
778
993
977
199
132
639
848
968
276
321
687
586
941
365
764
810
292
382
574
800
49
616
553
234
890
622
920
65
327
284
700
373
537
520
156
474
454
158
275
62
997
535
609
137
412
732
37
77
392
51
880
222
709
10
901
82
640
809
904
666
663
294
710
180
835
142
365
896
705
987
957
243
971
325
461
312
917
742
197
331
385
45
594
523
226
651
23
655
745
165
872
938
686
256
459
639
785
491
781
511
39
99
179
928
410
687
425
514
130
749
533
283
62
505
883
410
568
846
10
74
911
516
128
999
897
211
296
579
375
903
588
83
77
289
603
87
111
989
492
870
134
768
194
328
55
57
945
572
506
780
853
416
82
659
160
540
621
170
292
121
254
936
574
701
523
428
67
947
521
518
299
84
907
427
677
153
304
642
459
811
318
624
546
728
376
864
106
317
750
924
588
704
847
757
811
740
100
638
230
43
768
386
881
913
606
736
562
84
133
223
20
526
829
326
488
632
378
193
606
199
293
420
992
827
278
410
544
745
986
57
667
203
486
47
127
159
414
136
117
178
365
86
700
364
690
505
857
102
685
963
206
578
574
703
419
47
748
603
270
716
237
361
374
553
969
460
720
325
971
807
60
591
646
268
47
160
578
219
317
799
27
539
121
858
509
618
866
944
462
840
599
170
729
842
840
660
481
523
941
939
885
165
868
936
371
829
963
725
963
62
752
973
789
455
386
856
391
84
910
861
960
260
495
121
385
898
308
653
598
887
889
732
401
890
128
987
304
624
461
755
387
22
695
758
394
339
10
147
381
15
589
463
747
833
567
28
43
17
817
835
890
83
491
455
950
87
213
176
579
589
227
228
142
793
13
998
434
780
859
643
508
304
779
282
874
41
683
82
728
387
57
941
49
49
497
967
830
454
663
618
19
569
764
184
748
526
744
587
305
452
204
261
117
51
644
586
681
974
855
38
929
46
629
145
566
215
67
428
89
532
172
929
896
209
44
905
928
777
300
789
405
147
722
35
573
701
72
447
100
325
814
10
284
523
246
411
855
829
395
33
215
943
859
799
877
835
143
421
18
660
127
191
168
43
789
56
439
77
195
780
71
224
758
280
920
634
312
335
706
265
417
321
484
442
433
923
175
437
357
921
858
108
704
754
897
895
145
540
401
183
79
703
144
378
128
627
831
397
782
856
193
943
886
19
79
549
593
340
966
29
601
614
835
750
709
248
240
225
709
936
822
95
941
543
634
204
940
742
803
185
950
437
780
598
132
862
98
50
845
581
818
907
991
572
119
336
57
338
707
164
100
88
217
569
555
566
548
827
440
72
280
393
532
500
655
162
597
792
647
226
161
128
638
262
45
851
937
790
315
266
792
755
130
998
872
954
713
667
414
152
131
885
744
38
569
872
552
118
175
452
717
106
928
775
712
331
187
580
232
57
704
126
753
408
723
602
721
834
803
968
106
997
874
42
741
701
30
484
26
293
358
337
623
757
443
416
424
303
748
297
222
422
971
626
366
217
606
736
884
440
247
688
336
718
39
163
714
704
405
218
803
39
178
536
115
128
548
796
670
926
79
315
488
451
70
140
779
971
608
972
849
318
156
721
797
671
61
976
930
657
193
872
184
600
994
124
584
927
626
240
382
219
484
707
252
380
398
982
939
252
911
109
256
398
560
516
232
535
365
628
805
341
734
945
213
537
61
724
47
588
876
68
945
360
762
601
821
91
71
299
531
36
940
590
634
453
923
77
623
876
808
639
734
299
808
332
520
692
442
921
321
388
733
472
594
635
887
97
992
982
479
116
93
344
371
815
125
874
642
56
37
394
403
773
338
401
838
435
421
951
981
650
431
965
907
445
413
831
393
700
833
328
460
172
330
921
524
484
345
465
261
474
621
708
69
171
817
843
429
693
407
277
117
24
859
614
859
660
918
182
898
472
551
221
605
322
77
955
540
210
274
531
662
75
822
113
993
434
506
177
429
891
732
443
497
353
714
740
356
960
659
651
686
119
507
130
522
917
722
942
772
937
596
631
591
678
128
887
491
986
806
396
38
671
314
160
450
125
994
18
614
541
399
904
995
580
726
716
82
284
941
905
471
509
557
559
308
95
109
831
906
802
689
863
493
934
217
861
140
408
585
765
870
175
184
320
663
903
385
959
561
565
793
838
752
350
701
728
916
448
718
209
20
491
400
872
358
59
469
506
746
97
125
228
556
507
452
150
384
520
14
980
574
53
926
735
888
849
285
321
962
153
849
771
966
934
203
723
753
802
780
232
440
542
870
420
362
642
580
53
52
293
976
139
14
655
631
695
995
456
822
407
547
322
905
655
809
638
808
691
207
789
790
486
896
780
952
174
410
213
531
646
75
581
186
337
351
197
340
782
18
448
251
390
263
333
569
936
578
759
179
581
72
167
327
404
210
716
354
322
284
326
321
141
935
71
739
190
719
766
462
708
585
78
577
558
458
68
654
771
336
321
235
774
474
660
325
46
50
980
298
680
245
921
134
395
247
457
259
419
777
812
624
548
149
171
767
574
246
741
367
779
442
608
374
533
726
507
536
772
364
570
259
609
202
243
425
371
547
948
468
906
99
245
529
31
901
573
842
231
914
190
685
102
688
278
880
217
882
723
705
628
510
587
415
428
897
31
823
758
108
618
711
19
291
278
824
165
891
971
492
925
129
177
783
238
381
610
855
793
580
985
760
570
444
449
183
200
732
104
935
157
854
53
612
266
987
428
461
551
172
730
466
492
817
346
926
689
226
203
809
103
77
947
557
392
102
282
856
349
303
76
810
315
414
348
432
412
650
100
805
937
889
812
160
671
704
334
416
874
742
680
844
737
788
89
60
462
968
535
694
413
684
731
87
341
397
26
871
930
558
731
463
801
217
607
424
301
493
155
631
51
21
71
188
515
411
887
272
505
88
730
600
745
681
590
837
697
772
966
337
265
505
985
796
392
225
270
166
501
759
691
956
881
781
233
737
876
129
815
82
744
280
540
791
119
195
87
914
793
661
886
438
821
72
999
872
458
865
533
59
801
86
606
619
848
643
391
51
514
172
381
286
732
392
696
826
31
253
981
426
328
258
50
695
558
753
905
253
871
754
877
805
447
864
193
755
223
99
854
374
276
381
741
684
828
164
552
459
271
368
513
597
13
98
637
613
242
291
662
325
93
965
863
801
607
645
701
61
382
630
849
37
261
904
327
64
485
765
132
32
519
838
258
678
509
792
170
686
800
184
626
664
856
189
480
296
596
92
148
949
775
336
286
777
249
99
176
394
476
36
894
271
866
844
770
827
696
159
70
743
571
659
281
886
694
829
222
835
133
797
590
599
492
532
826
524
888
822
880
54
404
604
958
568
342
314
123
948
802
162
29
257
389
245
336
938
109
375
663
832
267
685
705
304
156
241
694
467
380
641
626
45
639
490
936
453
519
97
663
104
91
850
885
33
876
362
446
239
780
28
416
681
943
286
753
439
503
129
796
411
645
655
871
662
130
593
673
365
559
55
219
842
114
365
884
500
718
591
197
360
433
542
910
940
888
436
58
408
613
864
879
665
795
746
966
192
828
216
795
94
504
409
132
215
511
363
960
19
286
731
641
50
355
178
24
766
569
770
836
569
964
281
954
676
169
528
562
728
410
579
951
468
517
699
174
312
632
760
559
761
698
964
815
578
166
474
152
240
67
829
592
506
92
900
457
467
226
191
915
817
999
354
998
651
447
606
768
408
876
938
178
244
62
161
412
172
997
712
678
486
528
454
610
435
731
856
981
246
141
534
87
738
297
592
823
231
474
550
27
905
516
245
938
530
503
471
612
303
118
897
411
615
126
732
971
650
483
721
391
436
453
222
183
682
645
505
366
978
679
815
434
552
140
690
953
293
414
785
188
707
218
844
441
862
465
308
603
605
793
911
160
968
297
453
672
734
835
960
952
450
722
517
902
589
899
556
607
273
358
62
402
805
571
542
761
94
987
39
587
103
116
524
858
805
66
988
686
543
22
95
482
990
332
505
751
29
349
328
465
571
509
768
873
555
895
956
477
539
698
297
81
547
563
848
878
434
65
64
914
671
594
655
819
115
798
350
459
548
581
883
352
893
384
886
455
968
916
348
938
112
994
34
149
521
782
575
474
221
121
397
522
93
141
986
973
552
748
492
555
586
983
797
406
922
41
667
260
607
176
400
702
406
296
703
951
590
42
114
224
917
956
438
38
639
679
66
157
397
784
482
48
442
941
579
558
990
326
460
366
659
683
515
25
551
272
339
159
523
673
198
446
732
787
757
717
799
99
991
963
155
696
187
261
777
814
575
13
752
43
172
808
97
671
584
112
682
806
99
795
76
985
942
564
268
209
779
243
636
367
917
912
510
415
775
722
84
241
47
480
184
255
590
883
384
116
193
445
960
881
973
820
772
348
752
448
513
963
341
718
210
124
434
520
528
646
156
826
451
142
460
117
86
223
720
503
386
743
976
406
373
606
273
444
398
886
978
683
913
499
209
933
984
23
545
844
430
159
550
566
396
447
556
97
162
899
948
339
143
850
243
493
447
661
882
47
799
716
836
43
185
290
162
58
380
206
524
380
705
525
621
453
688
39
211
16
47
445
438
137
493
48
551
922
104
697
178
100
934
845
181
962
305
611
39
918
606
649
664
88
489
249
10
122
189
500
444
724
626
858
553
242
326
31
41
457
46
351
132
81
300
954
906
900
847
883
695
401
147
182
953
231
193
688
858
278
247
158
465
225
911
203
775
492
454
381
87
366
588
119
456
541
200
756
716
136
804
798
949
188
685
363
676
256
340
549
838
118
62
195
586
82
47
250
877
442
343
337
226
411
763
51
822
618
473
890
794
207
55
400
946
936
252
37
316
455
977
92
957
237
66
340
459
976
91
403
377
615
517
577
547
658
58
325
887
875
596
199
787
726
610
792
150
799
916
828
735
239
126
332
871
304
506
50
480
58
344
730
529
995
464
949
281
414
538
817
70
352
266
501
299
843
51
124
974
594
931
405
83
542
596
263
492
676
765
95
486
469
305
974
584
911
365
246
180
525
973
617
979
748
117
806
484
173
543
987
423
995
150
207
852
605
630
372
290
154
699
817
716
479
646
806
313
731
106
178
61
313
258
551
346
797
551
329
991
983
719
997
830
396
402
986
616
638
128
454
940
137
763
876
844
102
91
349
730
95
697
897
773
129
647
657
829
935
643
570
569
868
546
465
39
527
716
168
77
296
549
559
541
935
648
283
808
737
872
825
468
144
516
954
463
338
927
98
330
413
770
191
248
494
781
718
61
374
923
613
398
99
958
300
182
38
928
27
817
535
247
453
690
877
333
721
569
979
589
451
183
446
69
295
907
73
234
567
485
241
681
390
899
937
504
616
424
350
966
796
231
778
768
756
503
357
590
432
368
399
869
861
879
88
331
594
160
694
122
191
547
119
674
295
216
445
362
956
904
444
698
736
846
838
345
685
245
695
542
914
181
445
212
306
951
828
844
813
550
845
130
587
900
335
70
317
104
301
571
916
950
574
52
136
313
282
48
727
615
820
113
511
252
184
862
191
10
140
971
804
514
581
530
962
494
131
434
475
970
360
934
276
951
178
516
909
663
607
876
236
574
945
495
721
216
851
252
206
466
770
710
865
360
309
529
91
523
549
554
381
913
54
134
971
665
868
394
314
585
406
203
549
559
801
466
523
382
653
484
163
402
354
716
84
169
166
114
257
498
179
79
457
521
393
27
824
429
282
810
459
643
460
848
376
621
439
179
599
515
598
630
196
867
954
571
37
222
97
724
833
27
861
93
572
161
116
47
396
907
806
725
916
332
621
301
699
12
236
192
121
797
212
39
889
29
73
106
832
927
588
164
371
158
539
263
526
522
477
901
542
994
197
14
54
280
539
770
921
863
222
500
895
883
935
117
698
456
661
673
927
415
849
345
349
73
971
564
838
834
796
428
923
171
369
109
819
832
190
578
244
727
963
526
288
361
709
236
892
190
131
913
635
101
196
55
119
990
720
646
124
973
191
725
537
118
301
780
392
475
723
932
946
201
839
125
456
378
799
581
818
67
785
306
678
136
750
138
920
16
731
762
749
651
714
133
847
845
815
905
520
836
907
925
487
553
466
983
87
911
791
142
463
809
736
36
244
418
275
258
52
649
304
767
667
343
978
310
987
196
329
356
370
521
461
775
981
628
159
888
121
477
239
169
763
11
984
705
958
341
38
757
182
830
201
873
453
455
848
571
339
92
93
994
469
528
610
82
533
338
910
750
426
826
499
260
154
105
953
152
708
254
456
424
757
411
763
194
787
839
310
591
249
515
334
660
276
431
499
209
618
539
940
806
367
926
84
990
675
865
302
721
129
712
466
242
223
780
809
361
737
321
907
92
815
73
760
989
263
985
493
658
380
582
966
198
147
637
368
141
582
926
942
879
974
642
430
65
756
193
305
832
687
543
945
215
907
862
80
660
504
519
677
656
930
774
504
960
544
830
871
423
749
75
935
824
724
737
236
541
430
30
289
571
722
216
289
656
148
527
404
591
349
500
375
642
379
813
724
982
359
64
927
789
712
169
257
870
678
37
26
65
317
898
299
845
277
669
320
313
353
93
249
457
645
343
474
641
366
150
802
543
988
428
66
38
695
759
637
434
698
939
274
284
808
39
918
646
930
543
510
677
433
778
820
242
809
626
411
30
688
963
182
278
478
444
191
810
274
447
895
461
662
867
546
535
435
35
366
499
520
234
645
925
928
808
854
305
731
793
22
820
487
440
643
727
884
53
361
939
70
370
333
307
32
817
65
161
263
125
721
620
775
159
113
42
467
675
578
345
924
544
648
596
702
623
434
389
586
644
383
668
578
568
362
530
422
195
508
349
711
555
300
976
556
796
439
889
315
179
316
498
995
149
113
671
79
472
913
547
418
57
234
650
648
337
227
738
36
240
646
382
313
738
170
957
544
293
755
486
59
822
741
446
442
553
856
28
828
443
96
432
689
727
950
49
624
705
613
419
945
822
503
88
132
673
726
357
238
551
896
870
845
373
573
227
995
129
722
786
154
592
229
150
775
922
620
228
832
950
905
149
535
392
327
381
833
155
157
891
991
579
712
592
740
493
215
210
816
783
620
787
860
647
226
810
66
64
879
785
614
875
879
176
113
631
149
688
280
787
986
813
36
161
216
95
195
45
288
656
350
70
42
699
622
120
94
618
99
55
757
594
563
334
54
607
213
143
785
671
945
211
831
290
786
668
216
349
112
234
137
715
686
775
509
433
415
337
440
34
356
532
205
672
167
294
481
317
108
246
496
496
407
663
598
919
389
224
140
680
678
820
617
989
794
808
263
170
162
145
790
436
504
892
682
324
293
769
690
657
316
525
673
892
689
862
874
634
528
904
784
657
599
816
131
253
358
67
593
743
694
756
198
389
480
91
64
987
937
279
806
57
30
530
281
778
296
926
223
620
978
673
299
807
770
817
170
622
669
822
929
137
765
274
409
403
487
553
197
919
586
831
152
230
453
480
679
650
446
82
477
740
763
134
515
649
152
599
114
315
34
203
48
928
651
250
426
243
640
399
325
510
589
28
413
600
244
926
177
274
25
671
98
891
77
21
883
53
724
622
96
11
412
134
267
875
948
329
411
663
954
289
837
303
221
303
482
668
551
247
112
510
387
955
488
676
774
528
954
561
102
68
386
249
614
819
330
850
813
214
989
931
734
881
851
713
655
137
770
878
417
496
335
65
167
897
256
354
674
909
821
284
870
133
105
297
397
912
339
997
483
796
839
527
684
899
757
642
986
872
267
141
601
996
134
446
722
854
742
175
429
747
116
97
773
486
288
679
25
397
462
569
830
528
29
693
494
729
523
23
303
523
188
691
519
465
39
752
634
67
170
123
67
58
314
790
501
207
771
121
25
852
462
983
983
666
728
960
204
944
99
553
546
683
511
889
865
835
603
736
797
657
844
638
922
397
741
314
183
38
198
173
281
178
579
644
185
709
455
868
35
291
898
938
711
519
338
697
20
634
641
763
156
641
543
103
699
304
875
441
464
575
295
477
708
918
174
648
242
254
641
13
318
692
179
889
258
811
817
711
570
960
632
392
454
119
956
628
674
793
853
281
285
355
466
981
962
174
537
580
455
326
607
746
239
920
305
444
134
507
939
561
600
978
959
791
146
665
986
622
378
260
708
379
677
181
546
583
744
110
215
709
292
340
50
930
615
934
209
694
803
92
271
373
782
622
919
451
601
860
759
699
750
621
294
628
364
743
99
514
349
464
214
998
135
896
892
593
732
815
825
410
28
918
495
206
69
933
280
471
709
936
760
440
392
936
334
139
403
540
689
387
133
189
369
960
303
534
543
904
106
899
278
593
548
766
542
496
468
23
304
835
921
898
35
990
759
225
351
250
602
29
60
327
897
167
682
66
855
355
291
288
296
422
359
678
405
255
120
904
849
684
383
274
497
768
313
386
257
169
318
122
431
213
244
509
813
269
814
576
930
690
436
561
307
764
241
365
137
785
149
615
858
853
387
908
802
251
718
225
386
144
844
223
440
937
402
150
99
281
734
745
457
601
737
533
839
398
506
716
404
405
711
297
534
139
728
474
357
126
318
842
890
391
492
805
145
923
209
559
582
870
435
772
597
947
49
91
596
85
256
497
888
796
392
103
959
726
271
505
147
923
87
934
860
855
940
844
685
87
960
766
37
752
189
916
207
699
817
915
778
774
16
692
464
368
407
155
146
324
614
918
41
642
844
736
363
999
847
405
218
574
631
881
156
886
414
236
424
19
36
137
942
673
671
867
461
289
45
426
855
540
284
913
443
82
642
776
379
211
798
372
729
413
682
724
530
296
49
442
607
522
901
394
714
38
311
951
85
612
304
599
750
381
429
199
602
54
657
761
777
691
157
830
275
622
307
819
85
962
960
943
622
750
155
35
969
310
463
580
672
237
14
421
889
442
606
930
452
129
976
565
939
992
185
724
492
705
860
959
982
759
720
580
148
513
216
197
840
161
318
686
91
458
658
632
551
370
44
473
88
141
353
372
648
966
242
996
536
361
386
180
196
59
295
924
796
530
860
162
848
206
221
537
230
475
172
96
618
843
961
744
512
424
723
86
547
334
757
629
180
931
371
930
318
137
488
647
809
189
229
478
843
88
916
58
394
667
443
72
467
772
340
609
824
739
269
409
89
453
343
263
360
457
263
223
978
951
340
262
388
411
602
155
845
30
328
653
188
543
250
418
350
602
858
85
215
999
98
480
960
52
55
38
902
885
998
346
245
215
951
377
893
181
365
86
731
495
275
554
46
886
630
793
322
924
62
517
349
977
527
555
960
783
555
325
704
759
860
665
552
115
86
284
724
974
635
424
136
225
743
21
26
772
319
986
419
829
509
329
464
920
757
355
595
46
281
473
876
893
854
62
311
777
426
73
206
850
836
610
88
239
88
720
546
178
27
779
321
957
954
162
387
389
780
320
845
503
95
781
348
798
232
783
881
215
578
671
264
947
934
288
149
624
266
729
420
246
56
450
987
252
767
607
292
163
101
249
513
28
131
292
523
687
438
767
999
767
564
246
712
413
658
259
59
562
35
434
860
490
713
431
240
460
736
321
175
738
243
768
710
695
632
242
883
150
582
661
47
650
456
149
442
461
18
373
11
67
767
700
76
368
900
905
634
709
57
170
129
411
937
104
785
396
150
207
154
435
661
226
217
328
967
612
468
585
302
263
119
709
22
399
950
209
282
643
87
986
125
156
977
838
387
800
393
811
483
974
600
507
387
989
987
806
45
191
994
399
207
326
761
588
390
487
855
826
846
592
211
223
754
303
552
408
304
955
150
326
717
419
978
220
857
799
725
399
767
734
302
896
440
508
538
200
375
357
952
130
355
844
442
276
222
842
941
521
985
166
991
437
438
940
412
312
775
902
40
569
460
52
705
421
531
815
973
853
366
534
496
855
830
501
683
880
633
144
811
220
107
844
362
59
290
56
95
656
788
941
962
929
488
691
845
742
237
74
90
869
828
463
500
337
157
568
311
628
53
455
270
25
491
833
637
711
77
92
894
211
725
638
196
509
679
587
472
409
53
91
865
342
422
355
870
97
307
574
567
759
901
696
738
114
668
825
690
633
587
597
899
789
449
243
614
602
338
609
310
988
199
327
503
526
738
750
153
490
334
985
305
334
287
505
852
455
318
136
430
556
678
379
720
228
797
654
563
114
673
484
713
147
726
254
662
267
310
672
952
621
879
169
912
695
919
748
90
277
36
632
547
942
270
844
77
429
96
791
306
611
74
450
329
729
222
746
622
308
846
237
557
992
560
239
745
88
718
624
671
564
311
994
161
199
494
935
544
80
154
494
753
775
540
699
919
289
108
993
398
47
169
126
533
961
511
603
498
912
799
120
709
513
997
269
216
767
25
139
23
567
633
111
379
236
438
513
950
591
192
760
611
495
988
90
461
763
42
977
81
553
197
187
877
909
942
735
792
825
37
537
834
28
787
422
456
952
611
126
325
564
861
688
34
423
659
590
65
907
669
361
40
691
488
517
278
523
387
452
222
744
809
111
339
891
537
316
121
903
841
49
20
280
669
237
264
399
985
780
327
496
107
611
380
229
112
794
61
95
641
79
691
810
696
554
543
987
120
303
273
488
415
797
912
17
880
903
404
124
968
20
275
873
673
635
863
694
431
497
515
616
11
689
825
846
475
69
89
933
170
17
946
943
696
74
405
933
960
754
384
515
750
138
605
231
175
62
225
627
844
767
793
300
530
376
907
649
493
916
22
141
900
374
434
820
546
182
875
208
183
180
840
666
940
859
437
150
226
972
617
341
608
457
117
977
756
673
975
49
974
838
244
39
73
599
285
570
265
809
298
38
457
384
100
451
903
722
689
499
496
220
263
600
685
466
490
489
264
574
828
837
368
441
874
971
875
255
103
383
33
798
842
216
773
193
312
372
251
439
481
123
268
925
892
867
664
867
632
436
50
20
955
33
134
312
721
234
393
29
574
369
397
297
972
437
890
275
456
520
15
615
64
27
943
342
323
713
119
500
912
956
699
25
462
777
420
744
283
977
538
903
470
160
679
939
557
596
932
647
369
639
316
587
420
704
842
582
537
704
684
181
551
603
129
413
28
566
778
152
590
536
879
646
95
360
982
50
467
672
826
563
536
457
355
337
551
624
598
886
748
550
622
862
979
469
483
340
27
934
240
305
587
893
298
534
862
555
600
27
869
265
57
316
187
505
827
514
582
393
429
702
198
170
392
706
891
705
492
38
668
714
461
239
446
662
272
359
142
466
638
93
707
199
878
924
188
351
789
688
406
895
332
827
677
829
692
507
65
66
18
390
657
419
833
271
679
484
674
601
952
553
937
717
416
628
697
368
353
752
432
851
119
100
938
85
304
635
838
463
743
409
883
436
891
154
306
740
999
470
249
62
680
469
590
861
226
396
939
869
281
286
515
370
170
591
468
178
94
614
645
491
688
404
449
959
197
276
794
611
769
375
757
316
646
565
906
620
232
171
524
452
831
658
521
644
309
613
634
563
884
658
201
112
87
537
272
594
984
251
936
534
38
915
829
185
947
391
237
338
385
698
357
22
536
54
880
666
154
582
619
250
856
99
524
112
872
692
780
236
788
723
415
428
642
261
378
946
498
674
54
939
701
799
275
311
151
330
68
933
119
545
717
838
281
394
878
451
957
347
79
521
33
490
130
915
157
161
361
938
514
30
590
444
570
316
64
301
557
546
739
197
613
494
969
753
467
978
227
136
671
899
273
834
42
446
894
890
496
946
163
625
123
42
238
130
214
407
779
336
136
59
847
799
769
549
914
807
558
40
940
631
178
848
204
887
314
325
326
345
913
989
210
505
257
833
144
671
105
771
964
678
915
609
116
751
250
640
877
866
257
325
278
519
907
758
721
923
937
338
217
300
612
337
38
877
726
631
426
855
753
54
687
963
779
856
870
899
57
145
722
416
898
888
524
176
324
297
397
466
997
446
380
397
146
781
450
547
428
960
588
661
808
42
881
970
817
106
356
527
751
266
725
123
640
40
963
726
554
924
637
209
43
416
696
926
727
891
388
703
34
245
649
782
24
846
802
385
885
474
151
853
812
522
849
335
516
979
810
639
793
186
791
852
678
222
574
990
79
809
510
691
427
440
834
455
982
439
947
322
268
839
193
75
736
424
647
204
76
544
230
17
381
397
62
268
579
654
596
236
246
417
612
496
687
823
776
364
308
932
916
699
176
694
574
123
522
754
507
288
478
636
244
385
165
41
889
168
843
792
642
566
120
65
29
872
522
907
452
13
206
203
668
962
540
779
237
993
431
908
366
758
33
56
154
372
226
460
503
87
74
237
446
140
304
524
565
916
842
568
221
881
10
582
510
357
748
688
487
176
135
360
545
78
135
979
892
907
242
476
163
820
259
975
695
461
487
143
139
327
184
663
490
684
563
454
190
43
423
166
16
657
686
905
840
354
856
354
118
33
250
148
778
542
681
785
406
564
19
750
875
789
723
358
685
924
240
112
282
19
403
267
948
186
372
773
145
139
516
533
255
816
781
748
769
535
210
543
322
781
845
438
456
839
508
94
380
107
243
599
700
406
827
237
854
576
583
225
626
329
871
392
236
633
846
628
493
981
424
958
75
19
534
990
224
862
290
831
879
425
115
91
743
44
908
525
925
762
198
306
286
363
147
14
264
180
611
507
568
945
679
271
641
533
529
409
812
123
322
577
749
243
273
80
541
197
776
320
84
454
254
518
401
799
935
738
348
329
538
744
141
385
516
702
549
214
35
454
58
444
985
937
581
838
663
983
312
891
120
899
121
383
81
958
770
607
166
934
373
60
964
958
230
20
939
11
591
99
743
276
708
759
198
244
207
463
470
833
732
18
996
623
946
346
325
948
792
792
502
322
902
977
642
642
370
791
311
426
515
575
802
801
575
721
195
820
581
75
429
914
745
184
281
208
317
36
861
274
746
243
75
210
720
891
113
947
946
731
23
703
336
410
678
777
881
66
900
476
648
771
569
601
29
73
944
448
760
28
581
771
652
378
305
741
197
203
235
786
551
626
556
308
621
604
284
249
305
693
543
117
142
119
652
183
542
541
438
759
182
47
454
126
638
31
453
751
105
19
599
736
213
574
649
189
671
729
497
574
271
563
718
256
876
412
756
360
993
675
146
208
325
710
199
130
396
936
329
870
443
957
113
990
453
559
554
24
541
837
176
93
539
219
675
873
278
583
561
436
62
574
228
296
122
864
506
727
633
921
56
614
128
83
257
868
869
544
425
957
291
627
115
551
364
452
496
450
516
341
919
528
101
940
358
44
912
695
496
226
746
764
233
186
20
950
975
617
66
420
71
249
797
937
762
401
591
597
411
759
706
680
643
791
875
21
269
15
545
356
900
28
954
853
429
460
582
210
52
943
64
950
57
862
807
169
324
903
313
862
789
434
362
516
885
221
773
89
128
541
989
380
94
756
402
431
187
91
866
700
471
671
863
146
626
877
913
339
719
958
564
272
57
220
556
13
976
817
739
912
259
113
763
356
539
343
637
600
398
695
693
904
247
857
507
523
130
938
246
331
889
767
990
320
639
900
36
740
128
651
463
801
57
798
821
427
862
873
719
301
572
235
202
635
470
79
26
577
838
759
690
407
854
319
264
487
593
357
797
722
874
991
477
677
128
915
560
49
962
733
321
412
492
190
417
156
514
601
560
516
865
833
913
942
197
147
570
551
24
294
403
518
232
632
150
155
874
198
586
437
521
885
210
262
239
266
528
686
503
299
713
608
508
520
497
894
721
955
720
916
731
33
386
379
418
458
558
740
167
128
241
938
391
992
42
379
325
509
62
692
892
856
698
36
555
722
259
298
838
106
179
508
425
692
864
255
596
920
363
830
650
598
435
566
551
794
428
367
572
646
608
29
404
430
209
474
630
569
509
781
147
851
338
225
29
695
577
374
186
892
408
855
133
591
739
416
632
138
803
567
770
416
691
652
567
447
162
977
581
745
278
334
119
562
640
699
663
265
611
391
434
401
786
113
485
905
458
379
570
852
348
654
49
213
641
363
599
886
247
330
891
280
369
602
637
265
960
819
724
220
421
343
615
654
738
774
39
788
952
302
473
811
397
246
120
55
58
518
989
212
187
971
101
19
442
919
359
341
687
568
78
849
762
11
237
547
614
11
64
535
869
732
92
965
91
289
424
660
541
548
149
592
455
669
354
656
64
489
342
276
329
821
254
269
469
873
654
870
511
830
105
740
866
883
839
124
50
692
573
896
479
937
978
732
192
758
250
428
556
434
379
208
734
384
217
859
477
31
701
380
804
294
461
169
539
230
935
429
499
951
614
399
783
820
783
590
335
981
20
681
711
345
313
627
390
634
522
776
992
44
165
17
742
159
150
949
281
596
985
298
933
20
661
619
106
963
704
312
433
136
593
125
407
505
283
102
230
731
614
71
649
595
324
957
95
635
12
85
901
355
937
567
933
130
175
904
662
421
538
680
270
450
113
758
445
476
43
939
701
776
203
78
405
46
152
67
624
908
744
825
234
774
996
394
885
205
774
527
794
91
646
252
657
753
67
140
966
887
424
154
681
154
254
481
758
805
142
652
664
443
492
110
935
118
819
288
42
563
71
256
150
52
872
114
577
109
373
525
313
148
687
79
372
857
534
353
369
601
84
458
211
576
432
175
718
688
911
403
402
727
467
410
388
313
979
857
565
451
279
332
969
677
533
721
678
83
584
972
352
842
782
115
33
326
359
908
148
308
994
834
608
357
589
436
690
532
342
150
965
553
190
746
523
389
171
536
703
655
776
497
257
179
775
430
761
14
919
55
387
198
370
898
527
331
488
792
111
971
448
404
327
990
281
588
974
898
802
639
823
921
720
212
807
96
144
528
352
660
968
763
494
283
345
351
396
657
831
531
534
397
552
536
268
856
379
217
522
948
604
357
333
388
452
618
146
548
341
167
687
628
824
918
667
997
83
110
913
803
70
697
468
27
162
310
933
999
968
297
726
190
959
702
401
605
467
504
746
656
78
682
31
483
665
152
47
77
799
206
132
335
583
398
365
837
145
276
787
214
925
407
21
357
938
350
289
94
437
276
986
225
352
750
592
36
794
736
545
219
602
218
750
819
713
934
894
655
227
431
236
373
551
110
741
839
285
362
642
658
654
138
99
319
947
191
538
713
406
969
625
911
324
395
113
505
440
299
667
461
944
708
380
855
248
440
345
652
325
263
489
496
702
404
129
821
502
112
544
546
132
538
948
651
345
257
34
276
376
607
179
383
487
257
796
750
464
998
28
537
321
58
647
72
227
824
43
274
639
129
108
22
259
814
922
735
745
337
437
749
313
536
514
990
623
646
736
218
851
227
679
835
471
285
557
315
141
662
821
945
669
264
43
884
505
653
303
406
919
232
307
499
907
27
738
422
990
465
710
275
621
247
137
131
787
743
872
621
110
225
566
415
166
49
218
284
955
994
752
943
710
468
911
175
153
511
42
576
732
535
244
950
841
491
11
295
622
45
560
651
147
892
741
66
918
961
523
537
168
527
857
615
557
670
644
144
990
267
780
272
182
101
866
289
824
502
985
855
470
978
572
171
507
747
518
348
752
223
454
532
135
919
538
591
149
673
603
960
570
399
969
882
533
963
435
774
808
172
804
973
656
617
216
873
966
832
344
836
618
186
995
421
54
958
314
287
715
247
146
782
140
454
925
913
157
819
964
312
288
58
463
617
905
660
368
391
626
224
997
326
687
172
288
205
955
965
552
777
81
229
586
704
778
906
706
586
674
382
309
573
556
423
623
660
26
392
503
253
957
850
121
724
483
898
653
675
465
22
157
96
521
370
718
869
723
459
333
776
236
999
429
884
189
884
995
936
745
426
652
727
758
200
198
361
972
811
543
435
421
559
302
228
552
274
962
731
328
139
859
724
324
619
999
516
883
667
251
444
382
104
687
494
28
573
354
276
748
692
826
327
638
224
943
827
369
690
569
503
912
333
377
927
968
783
729
882
576
925
280
392
305
99
303
742
817
315
781
685
696
736
238
860
166
385
320
20
571
614
565
446
670
140
314
746
28
399
874
506
217
323
831
270
186
673
389
563
41
118
616
637
130
142
987
707
223
758
300
51
335
951
49
63
959
110
230
127
862
296
957
240
378
534
260
585
181
659
697
707
149
298
311
86
579
830
547
833
114
462
131
539
592
255
774
651
406
981
965
697
128
14
911
821
358
818
413
118
163
497
390
772
983
77
580
201
243
275
462
932
152
877
95
994
232
359
489
621
621
45
70
331
935
269
329
155
394
678
369
190
404
437
889
321
213
991
181
114
906
44
142
697
222
555
519
392
718
770
352
148
390
366
860
80
563
538
344
215
225
453
811
119
539
342
146
710
35
589
321
259
537
257
925
974
87
651
950
656
285
493
424
768
88
875
772
755
456
786
282
269
933
982
432
952
110
206
311
731
482
125
602
829
243
637
409
706
241
84
27
769
17
498
425
733
570
363
760
282
50
157
765
306
900
864
980
779
224
50
741
630
434
105
353
193
393
39
575
19
435
597
117
239
117
839
974
245
217
235
495
48
744
538
23
76
393
376
712
198
868
700
374
367
841
229
34
849
876
380
28
650
449
852
117
516
352
839
80
715
275
515
603
29
172
459
657
324
532
976
505
860
252
781
516
92
50
993
358
84
359
926
566
209
957
189
49
336
918
421
453
200
500
292
894
894
346
114
717
82
760
754
311
24
406
623
978
890
545
793
95
592
59
239
451
687
853
89
680
105
407
588
667
193
945
468
434
148
941
109
785
27
442
39
310
746
688
910
536
846
859
19
915
106
561
317
915
306
817
375
910
817
116
278
137
318
71
831
109
687
899
815
89
593
527
434
875
138
133
121
377
890
772
91
898
197
350
908
607
573
351
448
997
527
263
868
894
576
37
716
556
379
862
600
339
319
244
252
293
16
177
965
791
455
206
147
116
669
48
887
794
271
683
53
696
341
266
853
653
483
160
375
757
441
529
590
123
487
340
761
168
663
812
486
287
29
651
712
516
656
238
692
672
546
781
658
760
322
187
892
500
857
849
783
583
542
617
398
292
343
69
362
61
679
563
897
167
344
504
567
542
402
612
86
182
562
848
452
672
408
881
726
156
117
972
384
423
37
550
247
864
116
348
925
49
187
451
499
739
472
385
931
109
480
210
707
74
504
897
707
932
466
482
185
743
678
624
374
528
504
62
54
383
116
520
381
671
869
184
533
588
982
516
641
573
677
369
454
547
537
228
211
192
921
678
385
911
313
49
560
777
754
582
900
721
923
787
946
24
486
175
65
295
970
276
970
796
646
201
355
796
943
167
963
544
957
146
710
343
641
352
39
622
828
26
101
504
711
588
264
206
896
168
566
90
803
135
260
892
784
26
498
873
430
112
550
980
610
586
897
582
726
758
889
744
948
840
608
427
993
516
859
53
894
954
479
48
376
316
905
361
666
459
331
532
916
172
436
675
280
808
426
548
826
946
210
601
210
855
564
616
153
902
545
633
96
374
449
291
385
436
495
969
126
203
454
811
655
498
73
187
412
391
152
593
531
621
812
373
447
967
680
404
430
620
689
746
257
218
850
93
25
896
488
648
567
664
423
452
435
495
525
607
947
975
843
539
152
120
933
500
707
656
179
246
954
357
464
533
620
171
932
506
23
889
386
774
879
985
26
133
55
814
763
609
968
738
557
274
441
630
775
38
459
798
54
890
119
697
183
836
847
64
446
811
252
780
126
561
783
441
698
648
23
829
490
236
931
74
589
519
206
922
907
576
411
603
267
260
282
204
855
377
745
231
816
895
526
505
889
482
526
340
489
427
54
360
499
153
683
345
788
52
526
589
496
806
656
953
248
94
866
296
830
616
745
57
200
124
521
579
873
413
189
695
408
959
527
506
459
840
131
57
329
23
692
579
790
335
301
582
677
613
644
676
761
763
691
216
59
854
861
85
555
238
477
922
134
232
351
344
209
117
813
37
395
887
25
427
138
522
147
785
952
979
443
505
940
791
580
232
597
581
855
126
251
230
26
394
348
605
903
965
48
572
870
836
677
66
102
115
629
773
249
660
459
528
898
336
872
869
755
440
18
588
85
204
238
87
510
137
333
767
543
914
711
232
75
292
390
135
32
92
130
435
616
172
999
521
963
109
195
856
279
289
307
730
398
563
297
287
849
834
842
796
877
257
720
392
434
736
341
932
333
511
154
765
632
260
596
997
541
880
523
441
452
175
155
93
901
790
974
565
516
694
801
819
14
150
485
347
287
486
170
717
18
149
576
439
786
858
505
123
857
27
585
246
355
182
769
855
378
759
330
726
189
200
133
146
109
25
719
944
305
983
643
879
102
43
518
328
428
336
528
911
530
525
218
463
591
470
651
846
72
744
895
319
196
381
893
539
659
286
860
646
116
529
50
795
947
47
681
796
335
91
83
337
400
542
121
683
998
902
321
564
488
771
633
960
600
876
538
375
460
38
461
984
670
640
321
137
723
244
544
505
96
618
917
544
69
717
719
151
930
69
718
870
264
879
414
244
327
697
218
329
418
328
219
492
844
888
245
869
480
345
171
459
581
661
442
250
908
869
934
694
861
442
520
308
187
557
654
425
527
685
988
463
138
621
528
536
784
398
272
858
486
857
462
896
524
935
495
134
824
386
749
289
918
355
820
890
231
203
447
620
589
93
368
119
673
494
508
586
711
770
200
347
107
478
661
290
860
666
803
651
84
558
769
896
626
777
435
234
90
46
177
849
251
442
929
408
642
108
281
268
61
467
632
132
413
686
811
116
995
302
910
799
531
62
25
467
43
853
581
641
737
499
772
199
272
301
611
164
764
345
976
837
237
990
360
124
30
309
399
431
547
888
499
605
460
593
197
336
157
726
73
261
651
909
984
334
474
611
595
974
992
440
630
622
493
471
413
343
424
829
611
581
420
841
528
194
232
303
690
664
655
401
355
300
767
383
431
497
239
591
208
598
179
814
644
302
492
905
667
105
878
102
442
55
932
215
581
826
233
293
35
789
248
547
281
553
977
210
218
193
761
20
859
243
826
481
21
264
905
561
262
799
645
872
810
79
347
847
507
739
684
561
529
92
944
414
475
855
250
74
383
695
112
416
676
127
451
464
660
91
725
546
821
240
153
160
995
461
665
150
407
735
831
618
299
762
92
27
383
107
316
265
334
678
120
121
666
932
991
798
776
630
258
612
870
829
133
554
354
267
689
509
882
53
957
221
101
900
237
428
34
954
75
933
60
108
220
113
945
296
499
241
940
742
526
441
649
960
586
388
881
769
449
980
798
707
553
63
110
822
955
999
542
957
896
33
217
998
808
770
69
659
790
358
715
804
283
738
52
341
100
551
460
218
847
81
761
229
494
926
807
465
261
760
963
725
850
480
58
461
922
491
718
90
525
945
702
738
46
18
530
628
483
877
466
314
947
525
952
379
457
936
329
627
68
462
910
508
483
757
498
19
100
133
412
704
205
925
408
34
223
290
907
869
172
900
907
807
257
787
760
539
472
506
445
398
963
354
777
735
956
665
412
533
766
383
619
870
690
676
219
91
94
755
170
251
749
595
294
544
713
806
850
685
247
931
128
908
730
831
515
536
465
174
964
813
662
941
101
472
669
562
147
679
551
241
119
334
973
278
457
490
230
842
630
355
922
198
220
552
927
827
457
825
531
424
268
317
526
141
390
605
373
423
132
180
636
676
388
978
145
602
859
295
642
581
246
684
570
855
359
929
866
557
706
722
297
823
204
571
380
471
984
50
229
687
399
821
739
334
757
972
453
656
551
617
207
800
139
146
149
662
587
668
948
473
789
284
204
990
526
124
813
404
206
546
980
839
844
812
963
34
943
566
966
953
851
722
85
559
977
294
449
477
792
559
517
928
356
725
370
38
795
403
260
439
889
322
454
993
409
890
806
340
734
396
598
989
189
627
388
49
885
223
235
813
386
172
884
585
96
410
693
576
491
319
342
59
834
492
40
859
612
704
638
945
728
137
900
992
14
325
37
906
720
958
280
490
750
444
639
445
997
916
764
338
940
631
724
504
522
563
199
193
200
548
648
703
48
870
924
430
736
58
385
272
465
685
502
37
805
775
144
172
743
511
914
275
856
623
536
953
557
506
200
372
859
51
473
971
758
252
330
445
409
882
99
373
147
683
643
972
546
256
108
501
350
59
958
671
550
224
522
322
329
516
813
148
918
474
587
241
535
717
251
920
464
606
281
96
283
749
114
676
900
918
242
747
204
382
940
147
31
78
87
305
648
996
308
860
940
825
482
202
884
742
977
702
440
626
491
224
301
199
789
987
20
502
37
723
321
889
238
111
288
804
440
538
398
510
382
835
741
30
718
37
612
148
122
934
595
651
909
358
545
800
842
397
997
169
515
112
339
272
900
491
891
832
677
829
518
295
947
300
756
726
745
434
13
629
635
419
359
914
907
949
151
380
228
911
499
224
935
286
505
42
920
411
417
78
815
332
242
342
123
994
493
512
288
349
337
103
881
526
413
88
229
188
353
372
32
784
792
904
862
542
18
984
138
487
736
397
868
480
257
378
147
27
753
793
688
334
204
632
291
332
741
999
344
30
925
122
484
302
770
780
941
62
606
102
866
490
88
280
881
258
745
754
581
882
863
693
514
371
902
333
500
18
50
771
442
817
405
532
676
858
945
55
445
572
868
684
290
641
978
251
155
550
152
489
514
640
838
641
987
967
520
130
313
977
224
659
655
673
248
411
245
643
803
693
334
192
123
457
931
228
317
486
826
326
15
149
490
563
357
525
506
403
904
339
436
16
749
652
487
445
789
134
271
673
308
291
997
818
441
173
373
732
995
441
681
698
404
391
158
800
381
718
448
313
995
768
807
415
740
187
488
260
923
609
336
640
732
149
862
20
584
977
134
432
911
543
643
561
354
141
276
456
66
156
277
274
419
957
494
14
675
533
568
782
360
336
41
208
940
581
501
251
133
443
746
908
681
137
832
400
460
258
543
961
846
956
670
588
323
750
294
441
255
476
653
668
732
261
971
102
604
777
429
853
943
512
213
785
194
428
950
639
437
412
70
123
149
818
231
291
466
690
709
821
832
662
411
86
320
188
683
338
181
691
585
849
180
804
739
508
527
593
394
449
605
489
136
379
708
988
782
943
568
638
205
125
549
44
553
714
279
244
714
453
435
48
609
881
173
416
565
722
716
618
439
30
167
906
215
389
476
309
481
456
183
536
637
842
754
284
994
644
682
490
323
629
62
29
21
582
708
684
444
509
310
902
46
348
764
585
569
667
163
167
478
781
652
135
400
717
17
693
774
399
595
194
266
377
165
691
860
758
31
473
347
849
697
655
501
809
674
128
222
281
836
535
364
748
147
980
201
545
590
886
522
368
964
289
483
182
329
545
552
647
256
498
100
938
308
876
327
541
30
418
58
480
75
440
871
965
553
520
522
238
139
395
587
241
288
656
720
594
217
444
843
958
592
971
903
706
263
953
117
880
382
578
659
344
128
853
210
284
190
255
10
190
964
441
308
373
475
421
941
724
437
649
109
54
795
304
90
429
826
839
92
402
323
810
623
586
15
38
214
422
104
248
235
672
182
592
640
197
354
901
215
368
777
300
274
231
632
587
564
143
93
542
145
328
866
746
703
165
526
150
735
132
524
552
523
124
28
297
998
254
17
148
92
44
892
245
59
249
845
158
666
943
382
445
934
717
712
334
641
814
982
942
774
561
325
570
895
348
478
892
794
181
339
35
489
392
455
587
48
249
267
59
904
760
286
982
619
745
396
812
674
394
894
603
512
437
142
487
622
865
391
507
277
339
934
435
616
751
470
360
830
44
103
572
47
613
728
820
759
430
181
923
115
408
894
851
321
134
660
731
806
13
393
692
221
261
629
29
424
660
111
410
111
589
466
342
492
38
18
167
939
863
551
400
361
400
412
864
331
388
956
162
719
260
852
338
357
921
938
707
431
339
279
333
58
355
861
627
866
909
940
697
286
638
845
753
655
728
602
514
518
230
924
323
486
182
266